Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
135292 黄恩宁 最优分解 C++ 解答错误 60 0 MS 248 KB 756 2024-03-04 21:46:53

Tests(6/10):


#include<iostream> #include<cstdio> using namespace std; const int NR=210; int cnt=0,a[NR]; void func(int x) { //cout<<x<<endl; int i,j; for(i=2;x>i;i++) { //cout<<i<<" "; a[++cnt]=i; x-=i; } //cout<<endl; a[cnt]+=x; //for(i=1;i<=cnt;i++) cout<<a[i]<<" "; while(a[cnt]-a[cnt-1]>cnt) { for(j=1;j<=cnt-1;j++) a[j]++; a[cnt]-=(cnt-1); } i=2; while(a[cnt]-a[cnt-1]>cnt-i+1) { for(j=i;j<=cnt-1;j++) a[j]++; a[cnt]-=(cnt-i); } //for(i=1;i<=cnt;i++) cout<<a[i]<<" "; //cout<<cnt<<endl; return; } int main() { int n,i; long long ans=1; cin>>n; func(n); //cout<<cnt<<endl; //for(i=1;i<=cnt;i++) cout<<a[i]<<"###"; for(i=1;i<=cnt;i++) ans=1ll*ans*a[i]; cout<<ans<<endl; return 0; }


测评信息: