문제
https://www.acmicpc.net/problem/17219
17219: 비밀번호 찾기
2019 HEPC - MAVEN League의 "비밀번호 만들기"와 같은 방식으로 비밀번호를 만든 경민이는 한 가지 문제점을 발견하였다. 비밀번호가 랜덤으로 만들어져서 기억을 못 한다는 것이었다!
www.acmicpc.net
해설
- 중복되지 않고, 질의가 이미 저장된 사이트 주소만 입력되므로 해시맵을 사용한다.
- 해시 맵에 key : 사이트, value : 비밀번호 로 저장해둔다.
- 질의가 들어올때마다 맵에서 key를 통해 value를 찾아 출력해준다.
코드 (자료 구조 : Hash)
import java.io.*;
import java.util.HashMap;
import java.util.Map;
import java.util.StringTokenizer;
public class BOJ17219 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st = new StringTokenizer(br.readLine());
int N = Integer.parseInt(st.nextToken());
int M = Integer.parseInt(st.nextToken());
Map<String, String> map = new HashMap<>();
for (int i = 0; i < N; i++) {
st = new StringTokenizer(br.readLine(), " ");
map.put(st.nextToken(), st.nextToken());
}
StringBuilder sb = new StringBuilder();
for (int i = 0; i < M; i++) {
sb.append(map.get(br.readLine())).append("\n");
}
bw.write(sb.toString());
bw.flush();
bw.close();
}
}
결론
오랜만에 아주 쉬운 문제!
'CodingTest > 백준' 카테고리의 다른 글
[백준] BOJ 2448 별 찍기 - 11 (골드 4) (0) | 2024.06.18 |
---|---|
[백준] BOJ 1389 케빈 베이컨의 6단계 법칙 (실버 1) (0) | 2024.06.18 |
[백준] BOJ 2638 치즈 (골드 3) (0) | 2024.06.18 |
[백준] BOJ 18223 민준이와 마산 그리고 건우 (골드 4) (0) | 2024.06.18 |
[백준] BOJ 16928 뱀과 사다리 게임 (골드 5) (0) | 2024.06.18 |