[_rational, [_1st_order, `_with_symmetry_[F(x)*G(y),0]`], [_Abel, `2nd type`, `class C`]]
Book solution method
Change of Variable, new dependent variable
Mathematica ✓
cpu = 2.35039 (sec), leaf count = 77
Maple ✓
cpu = 0.055 (sec), leaf count = 77
DSolve[y[x]^2*(b + c*y[x]) + x*(x^n + a*y[x])*y'[x] == 0,y[x],x]
Mathematica raw output
Solve[-(((b + c*y[x])^((a*n)/b)*(a*n*x^n + (a*b + a^2*n - c*x^n)*y[x]))/(a^2*n^2
*(b + a*n)*x^n*y[x]^((b + a*n)/b))) == C[1], y[x]]
Maple raw input
dsolve(x*(x^n+a*y(x))*diff(y(x),x)+(b+c*y(x))*y(x)^2 = 0, y(x),'implicit')
Maple raw output
_C1+((b+c*y(x))/y(x)/b)^(a/b*n)/a/n*(c-x^(-n)*a*b)-((b+c*y(x))/y(x)/b)^(a/b*n+1)
*b/(a*n+b) = 0