QWQ来到了一个神奇的地方,这个地方有很多颜色不同的彩色石,每个颜色都可以用一个数字来代替,QWQ收集了一堆石子,他想知道这堆石子中颜色相同的石子个数的最大值
Input
第1行输入一个数字n,代表这堆石子的个数 第二行输入n个数,代表n个石子的颜色 保证输入的所有数都不超过100
Output
输出一个数字,代表颜色相同的石子个数的最大值
Sample Input
10 1 3 5 7 9 1 2 3 5 5
Sample Output
3
代码如下:
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
const int N=105;
int main()
{int i,max=0,n,t,a[N];
cin>>n;
for(i=0;i<N;i++)
{
a[i]=0;
}
for(i=0;i<n;i++)
{
cin>>t;
a[t]++;
}
for(i=0;i<N;i++)
{
if(a[i]>=max)
max=a[i];
}
cout<<max<<endl;
//cout << "Hello world!" << endl;t
return 0;
}
代码解释:
找相同数字最多的那个,避免了排序。直接用数组下标就是每个数,用数组内容表示出现个数,非常巧妙!