Algoogle

Algorithm for Programming Contest

PKU 2136 Vertical Histogram

Category: PKU Tag: implementation

Vertical Histogram

問題概要


解法


アルファベットの出現回数をカウントして, 最大の出現回数分ループを回してヒストグラムを表示する.

コード


(2136.cpp) download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>

using namespace std;

int cnt[26];
int maxa;

int main(){
    char c;
    while(~scanf("%c", &c))
        if('A' <= c && c <= 'Z')
            maxa = max(++cnt[c-'A'], maxa);

    for(int i = maxa; i > 0; i--)
        for(int j = 0; j < 26; j++)
            cout << (cnt[j] >= i? '*': ' ') << (j==25? '\n': ' ');

    for(int j = 0; j < 26; j++)
        cout << char(j+'A') << (j==25? '\n': ' ');
    return 0;
}

Comments