次数差

次数差
贡献者:programmer_ada

问题描述

x星球有26只球队,分别用 a ~ z 的26个字母代表。他们总是不停地比赛。

在某一赛段,哪个球队获胜了,就记录下代表它的字母,这样就形成一个长长的串。

国王总是询问:获胜次数最多的和获胜次数最少的有多大差距?

(当然,他不关心那些一次也没获胜的,认为他们在怠工罢了)

输入格式

一个串,表示球队获胜情况(保证串的长度<1000)

输出格式

要求输出一个数字,表示出现次数最多的字母比出现次数最少的字母多了多少次。

样例输入1

abaabcaa

样例输出1

4

提示

a 出现 5 次,最多;c 出现1次,最少。
5 - 1 = 4
样例输入2

bbccccddaaaacccc

样例输出2

6

#include 
using namespace std;

int main()
{
	string s;
	cin>>s;
	int a[1003]={0};
	for(int i=0;i<s.length();i++)
	{
		a[s[i]-'a']++;
	}
	sort(a,a+26);
	for(int i=0;i<26;i++)
	{
		if(a[i]!=0)
		{
			cout<<a[25]-a[i];
			break;
		}
	}
    return 0;
}

你可能感兴趣的:(#,蓝桥杯,算法,c++,数据结构)