动态规划
int main(){
int a; cin>>a;
int n=1024-a;
if(n==0) {cout<<0;return 0;}
vector[HTML_REMOVED]p(n,n);
for(int i=1;i<=n;++i){
if(i==1||i==4||i==16||i==64)
{p[i]=1;continue;}
if(i>1)
p[i]=p[i-1]+1;
if(i>4)
p[i]=p[i-4]+1;
if(i>16)
p[i]=p[i-16]+1;
if(i>64)
p[i]=p[i-64]+1;
}
cout<<p[n];
return 0;
}