I think substitution effect is zero and income effect is 30, anywayz can you upload your solution. I hope you are aware of the concave utility function and also boundary optimum.
The process in which you solved is applicable to convex utility functions, so you got the correct answer when you solved it for u(x,y)=xy
whereas as u(x,y)=(x^2+y^2)^1/2 is a CONCAVE utility functions in which having both (x,y) is not preferable only one of the product is preferred in which case it will have a boundary optimum.
To understand this, plot an indifference curve and the budget equation.
so at this prices px=2 and py = 1, you will have x = 0 and y = 20
whereas at prices px = 0.5 and py = 1, you will have x =40 and y = 0.