1 条题解
-
0
C++ :
#include<iostream> using namespace std; int a[105]; int main() { int n,sum=0,cs=0; cin>>n; for(int i=1;i<=n;i++) { cin>>a[i]; sum+=a[i]; } sum/=n; for(int i=1;i<=n;i++) { a[i]=a[i]-sum; } for(int i=1;i<=n;i++) { if(a[i]!=0) { //cout<<a[i]<<"→"<<a[i+1]<<endl;; cs++; a[i+1]+=a[i]; a[i]=0; } } cout<<cs; //while(1); return 0; }
Pascal :
var a:array[0..10000]of longint; n,x,i,ans,s:longint; begin readln(n); x:=0; for i:=1 to n do begin read(a[i]); x:=x+a[i]; end; ans:=0; s:=x div n; for i:=1 to n-1 do if s<>a[i]then begin a[i+1]:=a[i+1]+a[i]-s; a[i]:=s; inc(ans); end; writeln(ans); end.
Java :
import java.util.*; public class Main{ public static void main(String[] args) { Scanner cin = new Scanner(System.in); int n = cin.nextInt(); int dist = 0,cnt = 0,sum = 0; int[] arr = new int[n]; for(int i = 0; i < n; i ++){ int value = cin.nextInt(); sum += value; arr[i] = value; } int average = sum/n; for(int i = 0; i < n; i ++){ if(dist != 0){ cnt += 1; } arr[i]+=dist; dist = arr[i] - average; } System.out.println(cnt); } }
- 1
信息
- ID
- 713
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者