Find the function(s) $f$ satisfying the condition: $x^2f(x)+yf\left(y^2\right)=f(x+y)f\left(x^2-xy+y^2\right)$. 
Find the function(s) $f$ satisfying the condition: $$x^2f(x)+yf\left(y^2\right)=f(x+y)f\left(x^2-xy+y^2\right)\text.$$

Of Course, I expect the function $f$ be $f(x)=x$ or $f\equiv0$.
My attempt:
\begin{align}
& P(0, 0): 0=f(0)^2 \implies f(0)=0 \text. \\
& P(x, 0): x^2f(x)=f(x)f\left(x^2\right) \text. & \tag{A} \label{A}\\
& P(0, y): yf\left(y^2\right)=f(y)f\left(y^2\right) \text. & \tag{B} \label{B}\\
& \text{If } f \equiv 0: \ \text{Solution.} \\
& \text{If } f \not\equiv 0: \\
\\
& \text{Let } f(s) \ne 0 \text. \\
& \text{ Putting } s \rightarrow x \text { in } \eqref{A} \text {: } s^2f(s)=f(s)f\left(s^2\right) \text. \\
& \therefore f\left(s^2\right)=s^2 \text. \\
\\
& \text{ Putting } s \rightarrow y \text { in } \eqref{B} \text {: } sf\left(s^2\right)=f(s)f\left(s^2\right) \text. \\
& \therefore s^3=s^2f(s) \text. \\
\\
& \text{Since }f(0)= 0 \text, \ s \ne 0 \text. \\
& \therefore f(s)=s \text. \\
\end{align}
Now, I have to show that $\text{there is only }s=0\text{ which is satisfying } f(s)=0,$ to make sure that $f(x)=x \text{ or } f \equiv 0$.

You've correctly managed to show that if $ f ( x ) \ne 0 $ then $ f ( x ) = x $. As $ f \not \equiv 0 $, there is some $ x _ 0 \ne 0 $ with $ f ( x _ 0 ) = x _ 0 $. Consider an arbitrary $ y \ne 0 $. If $ f ( y ) = 0 $, by \eqref{B} you get $ f \left ( y ^ 2 \right ) = 0 $. Thus, $ P ( x _ 0 , y ) $ gives
$$ f ( x _ 0 + y ) f \left ( x _ 0 ^ 2 - x _ 0 y + y ^ 2 \right ) = x _ 0 ^ 3 \text . $$
As $ x _ 0 ^ 3 \ne 0 $, you must have $ f ( x _ 0 + y ) \ne 0 $ and $ f \left ( x _ 0 ^ 2 - x _ 0 y + y ^ 2 \right ) \ne 0 $, and therefore $ f ( x _ 0 + y ) = x _ 0 + y $ and $ f \left ( x _ 0 ^ 2 - x _ 0 y + y ^ 2 \right ) = x _ 0 ^ 2 - x _ 0 y + y ^ 2 $. This leads to $ x _ 0 ^ 3 + y ^ 3 = x _ 0 ^ 3 $, which is in contradiction with $ y \ne 0 $. Hence, $ f ( y ) = 0 $ is impossible, and you must have $ f ( y ) = y $. As you also have $ f ( 0 ) = 0 $, you get $ f ( x ) = x $ for all $ x $.
