Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
150951 lrf820215 最优分解 C++ 解答错误 40 0 MS 252 KB 630 2024-06-10 10:04:17

Tests(4/10):


#include<bits/stdc++.h> using namespace std; int main() { int j,k,n,count; int index=0,sum=0; int i=2; int a[1000]={0}; a[2]=2; scanf("%d",&n); while(n-sum>=i) { //从2开始,对n进行分解 sum+=i; a[i]=i; i++; index++; } int p=(n-sum)/index; //全部累加 int q=(n-sum)%index; //从后往前,加最后剩余的 for(j=i-1;j>=2;j--) { a[j]+=p; } for(k=i-1;k>i-1-q;k--) { a[k]++; } int max = 1; for(j=2;j<index+2;j++) { max = max * a[j]; } cout<<max<<endl; }


测评信息: