Vrăjitorul Arpsod își dorește să își reamenajeze habitatul. În habitatul acestuia există N munți, fiecare cu o înălțime cunoscută. Fiind un tip cu un foarte dezvoltat simț estetic, el își dorește să remodeleze cei N munți astfel încât să obțină un număr maxim de munți cu aceeași înălțime.
Arpsod are la îndemână o magie ce funcționează astfel: alege oricare doi munți, pe primul îl crește cu o unitate iar pe al doilea îl scade cu o unitate. Un munte poate ajunge la înălțimi negative ( practic se transformă într-o groapă ).
Arpsod își poate folosi magia de un număr infinit de ori.
Cerința
Vrăjitorul vă cere să determinați numărul maxim de munți ce pot fi aduși la o înălțime egală.
Date de intrare
Pe prima linie a fișierului munti.in se va afla numărul natural N, reprezentând numărul de munți existenți. Pe cea de-a doua linie se vor afla N valori naturale separate prin spațiu, reprezentând înălțimea inițială a fiecărui munte.
Date de ieșire
Fișierul munti.out va conține, pe prima și singura linie a fișierului, numărul maxim de munți ce pot fi aduși la o înălțime egală.
Restricții și precizări
1 ≤ N ≤ 1.000.0001 ≤înălțimea inițială≤ 1.000.000.000
Exemplu
munti.in
4 2 6 2 2
munti.out
4
Explicație
Toți munții pot fi aduși la înălțime 3, la fiecare pas scădem o unitate din muntele de înălțime 6 și adăugăm la un munte de înălțime 2.
#include <bits/stdc++.h>
using namespace std;
ifstream cin("munti.in");
ofstream cout("munti.out");
int main()
{
int n;
cin >> n;
int x;
long long int s=0;
for(int i = 0 ; i < n ; ++i)
{
cin >> x;
s+=x;
}
if(s%n==0)
cout << n;
else
cout << n-1;
}