【郑轻】[1898]985的数字难题

1898: 985的数字难题

Time Limit: 1 Sec  Memory Limit: 128 MB

Description

985有n个数,已知每次操作可以将其中不相同的两个数一个加一、一个减一,操作次数不限。
问他最多可以得到多少个相同的数。

Input

第一行输入一个整数t,代表有t组测试数据。
每组数据占两行,第一行输入一个n代表元素个数,下面一行输入n个整数a[]。
注:1 <= t <= 30,1 <= n <= 1e4,1 <= a[] <= 1e3。

Output

输出一个整数代表最多可以得到多少个相同的数。

Sample Input

2
3
1 1 1
2
2 3

Sample Output

3
1


因为一加一减总数不变

可知最后的数与sum/n也就是平均数有关

当sum%n==0时最终必能化为n个相同的数

否则最后必然多出一个sum-sum/n*n

所以最终只能化为n-1个相同的数


#include<stdio.h> 
#include<algorithm> 
using namespace std; 
int main() { 
    int T; 
    scanf("%d",&T); 
    while(T--) { 
        int n; 
        scanf("%d",&n); 
        int sum=0; 
        for(int i=0; i<n; i++) { 
            int t; 
            scanf("%d",&t); 
            sum+=t; 
        } 
        if(sum%n==0) 
            printf("%d
",n); 
        else
            printf("%d
",n-1); 
    } 
    return 0; 
}  

题目地址:【郑轻】[1898]985的数字难题

原文地址:https://www.cnblogs.com/BoilTask/p/12569429.html