C++ :
#include<bits/stdc++.h> #define MAXN 1000005 using namespace std; int n; int dp[MAXN]; int main(){ cin>>n; for(int i=1;i<=n;i++){ dp[i]=i; for(int j=1;j<=sqrt(i);j++){ dp[i]=min(dp[i-j*j]+1,dp[i]); } } cout<<dp[n]; }
注册一个 BestWit 通用账户,您就可以在我们提供的所有在线评测服务上提交代码、参与讨论。
使用您的 BestWit 通用账户