[백준 15238] Pirates (C#, C++) - soo:bak
작성일 :
문제 링크
설명
입력으로 주어진 해적이 사용하는 단어에서 가장 많이 반복되는 알파벳을 찾는 문제입니다.
주어진 단어에서 가장 많이 반복되는 알파벳을 찾고, 그 알파벳이 몇 회 반복되었는지를 출력합니다.
Code
[ C# ]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
namespace Solution {
class Program {
static void Main(string[] args) {
var n = int.Parse(Console.ReadLine()!);
var word = Console.ReadLine()!;
var freq = new int[26];
foreach (var c in word)
freq[c - 'a']++;
var maxFreq = freq.Max();
var mostFreqLetter = (char)('a' + Array.IndexOf(freq, maxFreq));
Console.WriteLine($"{mostFreqLetter} {maxFreq}");
}
}
}
[ C++ ]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
int n;
string word;
cin >> n >> word;
vector<int> freq(26, 0);
for (char c : word)
freq[c - 'a']++;
int maxFreq = *max_element(freq.begin(), freq.end());
char mostFreqLetter = 'a' + distance(freq.begin(), find(freq.begin(), freq.end(), maxFreq));
cout << mostFreqLetter << " " << maxFreq << endl;
return 0;
}