help
查看原帖
help
1376067
2026suzhongcheng楼主2024/12/10 17:08
#include<bits/stdc++.h>
using namespace std;
int n,s,a[10005],i,j,k,m;
int ans[10005],len;
int main(){
	cin>>n;
	if(n==0) cout<<0,exit(0);
	ans[0]=1;
	len=1;
	s=0;
	for(i=2,j=0;s<n;i++,j++){
		s+=i;
		a[j]=i;
	}
	k=s-n;
	if(k==1){
		a[0]=1;
		a[j]++;
	} 
	else if(k!=0){
		a[k-2]=1;
	}
	for(j=0;j<i-2;j++){
		if(!(a[j]==1||a[j]==0)) printf("%d ",a[j]);
	}
	putchar('\n');
	for(j=0;j<i-2;j++){
		if(!(a[j]==1||a[j]==0)){
			for(m=0;m<len;m++)
			ans[m]*=a[j];
			for(m=0;m<len;m++)
			ans[m+1]+=(ans[m]/10),ans[m]%=10,(ans[m+1]>0&&m==len-1?len++:0);
		}
	}
	for(i=len-1;i>=0;i--) cout<<ans[i];
}

求救,为什么只有Subtask #1错了

2024/12/10 17:08
加载中...