Here's what I got.
We usually reserve parts per million to express very, very small concentrations of solute, sometimes called trace amounts, in a given solution, but you can pretty much use parts per million to express any concentration if you want.
A concentration of
#color(blue)(ul(color(black)("ppm" = "grams of solute"/"grams of solution" xx 10^6)))#
If you take water's density to be approximately equal to
#1000 color(red)(cancel(color(black)("mL"))) * "1.0 g"/(1color(red)(cancel(color(black)("mL")))) = "1000 g"#
After you mix the solute and the solvent, you will end up with
#m_"solution" = "400 g" + "1000 g" = "1400 g"#
This means that the solution will have a concentration of
#(400 color(red)(cancel(color(black)("g"))))/(1400color(red)(cancel(color(black)("g")))) xx 10^6 = color(darkgreen)(ul(color(black)(3 * 10^5color(white)(.)"ppm")))#
The answer is rounded to one significant figure.
As you can see, it's not very practical to use parts per million for such concentrated solutions.