boj 1620번, 나는야 포켓몬 마스터 이다솜
https://www.acmicpc.net/problem/1620
- 문제 접근
처음시도에는 문제에 접근했을 때, 하나의 int 배열에 넣어서 구현했음 -> 시간초과
두번째 시도에는 데이터를 담는 배열을 2개를 만들었음.
String으로 문제가 들어오면 HashMap을 이용하여 답을 출력하고,
int로 문제가 들어오면 Stringp배열을 이용해 답을 출력했음.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.LinkedHashMap;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] strings = br.readLine().split(" ");
int cnt = Integer.parseInt(strings[0]);
int questionCnt = Integer.parseInt(strings[1]);
String[] arr = new String[cnt + 1];
HashMap<String, Integer> map = new LinkedHashMap<>();
for (int i = 1; i < cnt + 1; i++) {
arr[i] = br.readLine();
map.put(arr[i], i);
}
for (int i = 0; i < questionCnt; i++) {
String a = br.readLine();
if ((a.charAt(0) - 65) < 0) {
int num = Integer.parseInt(a);
System.out.println(arr[num]);
} else {
System.out.println(map.get(a));
}
}
}
}
'알고리즘' 카테고리의 다른 글
백준 1181 단어 정렬 (0) | 2019.03.02 |
---|---|
BOJ 2501 약수구하기 (0) | 2019.01.25 |
CodeForces, 1A. Theatre Square (0) | 2019.01.18 |
선택 정렬 selection sort (1) | 2018.12.18 |