第11回ブルーブリッジカップ-単語分析

タイトル説明
小欖は魔法の言語を学んでいます。この言語の単語は小文字の英語で構成されています。一部の単語は非常に長く、通常の英語の単語の長さをはるかに超えています。

小欖は長い間学んでいて、いくつかの単語を思い出せなかったので、これらの単語を完全に覚えるのではなく、どの文字が最も多く現れたかによって単語を区別することを計画しました。

さあ、小欖を助けてください。一言言ったら、彼が最も頻繁な手紙とこの手紙が現れる回数を見つけるのを手伝ってください。

入力形式
入力行には1つの単語が含まれ、その単語は小文字の英語のみで構成されます。

出力形式
最初の行には、単語に最も多く出現する文字を示す英語の文字が含まれ、
2行目には、単語に最も多く出現する文字が出現する回数を示す整数が含まれます。

同じ回数出現する文字が複数ある場合は、辞書式順序が最も小さい文字が出力されます。

入力例
1lanqiao

サンプル出力1 2

入力サンプル
2longlonglongistoolong

サンプル出力
2o
6

データ範囲
すべての評価ユースケースで、入力ワードの長さは1000を超えません。


問題解決
シミュレーション:

#include <iostream>
using namespace std;

int cnt[27];

int main()
{
    
    
    string s;
    cin >> s;
    
    for (int i = 0; i < s.size(); i ++) cnt[s[i] - 'a'] ++;
    
    char alpha;
    int maxv = 0;
    for (int i = 0; i < 26; i ++)
        if(cnt[i] > maxv)
        {
    
    
            maxv = cnt[i];
            alpha = i + 'a';
        }
        
    cout << alpha << endl;
    cout << maxv << endl;
    return 0;
}

LanqiaoカップC / C ++グループ州大会過去数年間の質問

おすすめ

転載: blog.csdn.net/weixin_46239370/article/details/115293359