이 문제는 unordered_map
혹은 map
을 사용하여 간단하게 풀 수 있는 문제이다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
#include <iostream>
#include <unordered_map>
#include <algorithm>
#include <stdexcept>
#include <string>
#include <tuple>
int main(void) {
std::ios_base::sync_with_stdio(false);
std::cin.tie(NULL);
std::cout.tie(NULL);
std::unordered_map<std::string, int> list; //name, sum
int n, m;
std::cin >> n >> m;
for (int i = 0; i < n; ++i) {
std::string s;
int k;
std::cin >> s >> k;
list[s] += k;
}
for (int i = 0; i < m; ++i) {
std::string q;
std::cin >> q;
if (list.count(q))
std::cout << list[q];
else
std::cout << "0";
std::cout << "\n";
}
return 0;
}
|
cs |
'개발' 카테고리의 다른 글
자바 GC (JVM GC) 최적화하기 (0) | 2021.10.06 |
---|---|
프로덕션 서버에 JSON 대신 Smile / CBOR 적용 (0) | 2021.04.13 |
손쉽게 PHP 네이티브 확장 개발하기 (Zephir) (0) | 2020.12.22 |
[BOJ] [CodeUp.kr] 카드 역배치 (10804번, 4841번) (0) | 2019.06.22 |
[CodeUp.kr] 3020번 기억력 테스트 4 (0) | 2019.06.22 |