Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- implement
- Matrix
- 코테
- hash table
- Number Theory
- two pointers
- Math
- string
- geometry
- 자바
- dynamic programming
- Counting
- bit manipulation
- java
- SQL
- 구현
- Data Structure
- simulation
- database
- greedy
- Stack
- 파이썬
- Method
- Class
- 코딩테스트
- sorting
- Tree
- array
- Binary Tree
- Binary Search
Archives
- Today
- Total
코린이의 소소한 공부노트
[백준 온라인 저지] 1620. 나는야 포켓몬 마스터 이다솜 본문
1. 입력
- 첫째 줄에는 도감에 수록되어 있는 포켓몬의 개수 N이랑 내가 맞춰야 하는 문제의 개수 M이 주어진다.
- N과 M은 1보다 크거나 같고, 100,000보다 작거나 같은 자연수이다.
- 둘째 줄부터 N개의 줄에 포켓몬의 번호가 1번인 포켓몬부터 N번에 해당하는 포켓몬까지 한 줄에 하나씩 입력으로 들어온다.
- 포켓몬의 이름은 모두 영어로만 이루어져있고, 첫 글자만 대문자이고, 나머지 문자는 소문자로만 이루어져 있다. 일부 포켓몬은 마지막 문자만 대문자일 수도 있다.
- 포켓몬 이름의 최대 길이는 20, 최소 길이는 2
- 그 다음 줄부터 총 M개의 줄에 내가 맞춰야하는 문제가 입력으로 들어온다.
- 문제가 알파벳으로만 들어오면 포켓몬 번호를 말해야 하고, 숫자로만 들어오면 포켓몬 번호에 해당하는 문자를 출력한다.
- 입력으로 들어오는 숫자는 반드시 1보다 크거나 같고, N보다 작거나 같고, 입력으로 들어오는 문자는 반드시 도감에 있는 포켓몬의 이름만 주어진다.
2. 출력
- 첫째 줄부터 차례대로 M개의 줄에 각각의 문제에 대한 답을 출력한다.
- 입력으로 숫자가 들어왔다면 그 숫자에 해당하는 포켓몬의 이름을, 문자가 들어왔으면 그 포켓몬의 이름에 해당하는 번호를 출력한다.
3. 코드
import java.util.*;
import java.io.*;
class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
String[] input = br.readLine().split(" ");
int n = Integer.valueOf(input[0]), m = Integer.valueOf(input[1]);
HashMap<String, Integer> keys = new HashMap<>();
HashMap<Integer, String> keyi = new HashMap<>();
for(int i=1 ; i<=n ; i++){
String s = br.readLine();
keys.put(s, i); keyi.put(i, s);
}
for(int i=0 ; i<m ; i++){
String s = br.readLine();
if(keys.containsKey(s)) bw.write(keys.get(s)+"\n");
else bw.write(keyi.get(Integer.valueOf(s))+"\n");
}
bw.flush();
bw.close();
}
}
'코딩테스트 풀이 > JAVA' 카테고리의 다른 글
[백준 온라인 저지] 1764. 듣보잡 (0) | 2023.04.18 |
---|---|
[백준 온라인 저지] 10816. 숫자 카드 2 (0) | 2023.04.18 |
[백준 온라인 저지] 7785. 회사에 있는 사람 (0) | 2023.04.18 |
[백준 온라인 저지] 25206. 너의 평점은 (0) | 2023.04.17 |
[백준 온라인 저지] 2941. 크로아티아 알파벳 (0) | 2023.04.17 |