279. 完全平方数
题目

思路
找出i减去小于i的完全平方数的数的最小组成个数,然后加一为i的组成个数,过一遍到n。
代码
class Solution {
public:
int numSquares(int n) {
vector<int> a(n+1,0);
for(int i=1;i<=n;i++)
{
int mi=0x3f3f3f;
for(int j=1;j*j<=i;j++)
mi=min(mi,a[i-j*j]);
a[i]=mi+1;
}
return a[n];
}
};