水题,直接贴代码。
//poj 1406 //sep9 # include<iostream> using namespace std; __int64 f1[2024]; __int64 f2[3024]; int main() { __int64 index1=0,index2=0,n; for(index1=0;index1<1300;++index1) f1[index1]=index1*index1*index1; for(index2=0;index2<2350;++index2) f2[index2]=index2*(index2+1)*(index2+2)/6; while(scanf("%I64d",&n)&&n){ __int64 maxx=0; __int64 i,j; for(i=0;i<index1&&f1[i]<=n;++i) for(j=0;j<index2;++j) if(f1[i]+f2[j]<=n) maxx=max(maxx,f1[i]+f2[j]); else break; printf("%I64d\n",maxx); } return 0; }
poj 1406 Starship Hakodate-maru 暴力枚举
原文地址:http://blog.csdn.net/sepnine/article/details/44392295