1 해설
-
1
我来交个题解玩玩。
#include<bits/stdc++.h> using namespace std; int a[1000111],s=0; int t,n,p; int main() { cin>>t; for(int i=1;i<=t;i++) { cin>>n;s=0;//这里的清零很重要 for(int j=1;j<=n;j++) { cin>>a[j]; s+=a[j];//求所有数之和 } for(int j=n;j>=1;j--)//因为要最少步骤,从最大的遍历 { if(s%j==0) { int mid=s/j,flag=1,cnm=0,ans=0; for(int k=1;k<=n;k++)//判断是否可行 { cnm+=a[k]; if(cnm>mid) { flag=0; break; } else if(cnm==mid){ cnm=0; } } if(flag==1){cout<<n-j<<endl;break;} } } } return 0;//完结撒花🎉️ }如果看不懂也没关系,
我瞎写的。
- 1
정보
- ID
- 524
- 시간
- 1000ms
- 메모리
- 256MiB
- 난이도
- 3
- 태그
- 제출 기록
- 4
- 맞았습니다.
- 4
- 아이디