classSolution{public:intnumSquares(intn){vector<int>dp(n+1,n);// 1^2 x ndp[0]=0;// No waydp[1]=1;// 1^2for(inti=2;i<=n;++i)for(intj=1;j*j<=i;++j)dp[i]=min(dp[i],dp[i-j*j]+1);returndp[n];}};
classSolution{publicintnumSquares(intn){int[]dp=newint[n+1];Arrays.fill(dp,n);// 1^2 x ndp[0]=0;// No waydp[1]=1;// 1^2for(inti=2;i<=n;++i)for(intj=1;j*j<=i;++j)dp[i]=Math.min(dp[i],dp[i-j*j]+1);returndp[n];}}