字母統計
字母統計
時間限製:3000 ms | 內存限製:65535 KB
難度:1
- 描述
- 現在給你一個由小寫字母組成字符串,要你找出字符串中出現次數最多的字母,如果出現次數最多字母有多個那麼輸出最小的那個。
- 輸入
- 第一行輸入一個正整數T(0<T<25)
隨後T行輸入一個字符串s,s長度小於1010。 - 輸出
- 每組數據輸出占一行,輸出出現次數最多的字符;
- 樣例輸入
-
3 abcd bbaa jsdhfjkshdfjksahdfjkhsajkf
- 樣例輸出
-
a a j
-
思路是:先找出出現最大值,然後再循環找出最小字母出現最多次數的下標,就可以了!
查看代碼---運行號:252183----結果:Accepted
運行時間:2012-10-05 12:15:42 | 運行人:huangyibiao
01.#include <iostream>
02.#include <algorithm>
03.#include <cstring>
04.using
namespace std;
05.
06.int
main()
07.{
08.int
testNum;
09.cin >> testNum;
10.cin.get();
11.int
ch[26], c;
12.while
(testNum--)
13.{
14.memset(ch, 0,
sizeof(ch));
15.while
((c = cin.get()) != '\n')
16.{
17.ch[c -
'a']++;
18.}
19.int
max = ch[0];
20.for
(int
i = 1; i < 26; i++)
21.{
22.if
(max < ch[i])
23.{
24.max = ch[i];
25.}
26.}
27.//cout << "max:" << max << endl;
28.int
index = 0;
29.for
(int
i = 0; i < 26; i++)
30.{
31.if
(ch[i] == max)
32.{
33.index = i;
34.break;
35.}
36.}
37.cout <<
char(index +
'a') << endl;
38.}
39.return
0;
40.}
最後更新:2017-04-02 15:14:53