문제(출처: https://www.acmicpc.net/problem/4351)
< Hay Points >
문제 풀이
문장에 HashMap에 key값으로 있는 단어가 나오는지 확인한다.
my solution (Java)
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.HashMap;
import java.util.StringTokenizer;
public class _4351_ { // Hay Points
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st = new StringTokenizer(bf.readLine());
int n = Integer.parseInt(st.nextToken());
int m = Integer.parseInt(st.nextToken());
HashMap<String, Integer> map = new HashMap<>();
for (int i = 0; i < n; i++) {
st = new StringTokenizer(bf.readLine());
map.put(st.nextToken(), Integer.parseInt(st.nextToken()));
}
int t = 0, result = 0;
while (t < m) {
String str = bf.readLine();
if (str.equals(".")) {
t += 1;
bw.write(result + "\n");
result = 0;
} else {
st = new StringTokenizer(str);
while (st.hasMoreTokens()) {
String word = st.nextToken();
if (map.containsKey(word)) {
result += map.get(word);
}
}
}
}
bw.flush();
}
}
변수)
n, m : 단어, 문장 개수
map : HashMap <단어, 값>
result : 문장에 사용된 값
n과 m을 입력받는다. n만큼 단어와 값을 입력받아 HashMap에 저장한다. m만큼 문장을 입력받아 문장에 있는 단어가 HashMap에 key 값으로 존재하는지 확인한다.
'🌞Algorithm > 🔥Baekjoon' 카테고리의 다른 글
[Baekjoon] 18706_Coffee (0) | 2025.02.07 |
---|---|
[Baekjoon] 14455_Don't Be Last! (1) | 2025.02.06 |
[Baekjoon] 6513_Deli Deli (1) | 2025.02.04 |
[Baekjoon] 7107_Journey of A Knight (1) | 2025.02.03 |
[Baekjoon] 5093_Letter Replacement (1) | 2025.01.24 |