반응형
728x170
코딩어렵지 않다.
다만 Count를 하는 문제가 나왔을 때
MAP과 Vector를 자유롭게 쓸 수 있어야 한다고 생각한다.
https://www.acmicpc.net/problem/20291
#맞는 풀이
#include <bits/stdc++.h>
using namespace std;
int N;
vector<string> vec;
map<string, int> m;
int main(){
cin >> N;
//count는 맵으로 세고
//정렬은 Vector로 함
for(int i = 0; i<N; i++){
string s;
string target;
cin >> s;
for(int i = 0; i<s.size(); i++){
if(s[i] == '.'){
target = s.substr(i+1);
if(m.count(target)){
m[target]++;
}else{
m.insert({target, 1});
}
break;
}
}
vec.push_back(target);
}
sort(vec.begin(), vec.end());
vec.erase(unique(vec.begin(), vec.end()), vec.end());
for(auto x : vec){
cout << x << ' ' << m[x] << '\n';
}
return 0;
}
map.count로 있는지 파악하고
vector로 정렬해서 중복 제거후 출력한다.
728x90
반응형
그리드형
'문제풀이(Problem Solving)' 카테고리의 다른 글
백준, BOJ, 2346번, 풍선 터뜨리기 C++ [CPP] ★★★★★ (0) | 2022.02.27 |
---|---|
백준, BOJ, 2589번, 보물섬 : C++ [CPP] ★★ (0) | 2022.02.15 |
백준, BOJ, 10825번, 국영수 : C++ [CPP] ★ (0) | 2022.02.08 |
백준, BOJ, 1759번, 암호만들기 : C++ [CPP] ★★★★ (0) | 2022.02.08 |
백준, BOJ, 1182번 C++ [CPP] ★★ (4) | 2022.02.08 |