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

Tests(4/10):


#include<bits/stdc++.h> using namespace std; int main() { int n; cin>>n; int x=n; int i=2,j=0,a[99999]; while(x>=i) { a[j++]=i; x=x-i; i++; } int p=j;//记录分解的因数的个数 j--;//最后一个a数组所在位置的下标 while(x--) { a[j]++; j=(j-1+p)%p;//考虑到剩余的数大于分解的因数的个数的情况 } int sum=1; for(int s=0; s<p; s++) { sum=sum*a[s]; } cout<<sum<<endl; return 0; }


测评信息: