3 条题解
-
0
#include<bits/stdc++.h> using namespace std; #define f(i,l,r) for(int i=l;i<=r;i++) #define F(i,r,l) for(int i=r;i>=l;i--) int r(){ int x=0,f=1;char ch=getchar(); while(ch<'0'||ch>'9'){if(ch=='-') f=-1;ch=getchar();} while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();} return x*f; } int n,a[105],t[10005]; int main(){ n=r();int s=0,ans=0; f(i,1,n) a[i]=r(),s+=a[i]; s/=n;//首先要想到求平均数 f(i,1,n){ a[i]-=s;//相减得到需要的牌数 } f(i,1,n){ if(a[i]){ ans++;a[i+1]+=a[i]; }//依次分到下一组,并将答案加 1 } cout<<ans; return 0; }//贪心
- 1
信息
- ID
- 228
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 3
- 标签
- (无)
- 递交数
- 206
- 已通过
- 106
- 上传者