令k(x)=f(x)+g(x)+f(x)g(x),则
k(-x)=f(-x)+g(-x)+f(-x)g(-x)
=f(x)-g(x)-f(x)g(x)
故 k(x)+k(-x)=f(x)+g(x)+f(x)g(x)+f(x)-g(x)-f(x)g(x)
=2f(x)
即 2f(x)=k(x)+k(-x)
=(x^3+x^2+2x+1)+((-x)^3+-(-x)^2+2*(-x)+1)
=2*(x^2+1)
得 f(x)=x^2+1
把f(x)=x^2+1代入f(x)+g(x)+f(x)g(x)=x^3+x^2+2x+1,解得
g(x)=x