해당 문제를 읽어보면, 결국 첫글자들(소문자 알파벳)만을 사용하기 때문에, 크기 26(알파벳 26개다... 멍청하게 직접 계산하지말자 이제...)짜리 Int 배열을 만들어서 접근
string s
s += "문자열"
위와같이 덧셈 가능하다. 파이썬에서 지원해주는 부분인데 CPP 에서도 가능하다!
#include <iostream>
#include <map>
#include <vector>
#include <algorithm>
using namespace std;
int N;
string s, ans;
map<char, int> m; // 사실 첫 글자만 사용하는 부분이니, 그냥 cnt[] 배열로 진행해도 무방했다!
int main(){
//N번 반복
cin >> N;
for(int i =0; i < N; i++){
// 문자열 String에 담고
cin >> s;
// 각각의 배열을 슬라이싱 해서 Map에 저장 밎 카운팅
m[s[0]] += 1;
}
// Map 순회하면서 5 이상인 경우 ret에 저장
for(auto item : m){
if(item.second >= 5){
ans += item.first; //위에 처럼 할 필요 없이 간단하게 문자열끼리 더해서 진행하는 것도 가능!
}
}
//sort 하고 출력
if(ans.size() == 0){ // v.size()는 vector의 내장함수!
cout << "PREDAJA";
}
else cout << ans;
}