Hikenny25
1620 - 나는야 포켓몬 마스터 이다솜 본문
https://www.acmicpc.net/problem/1620
- 구현
import sys
input = sys.stdin.readline
n, m = map(int, input().split())
a = list()
for _ in range(n):
a.append(input()[:-1])
for _ in range(m):
i = input()[:-1]
if i.isdigit():
print(a[int(i)-1])
else:
print(a.index(i)+1)
(리스트 구현 - 시간 초과)
index 연산이 리스트를 한 번 순회하기 때문에 시간 초과가 났다..
import sys
input = sys.stdin.readline
n, m = map(int, input().split())
a, b, c = dict(), dict(), 0
for _ in range(n):
c += 1
inp = input()[:-1]
a[str(c)] = inp
b[inp] = str(c)
for _ in range(m):
i = input()[:-1]
if i.isdigit():
print(a[i])
else:
print(b[i])
(딕셔너리 구현 - 정답)
그래서 딕셔너리를 두 개 만들어서, 하나는 키 값을 수로 하나는 키 값을 이름으로 저장햇따
O(1)로 바로 접근이 가능해서 통과!
'baekjoon (solved.ac) > class 3 Solve' 카테고리의 다른 글
11047 - 동전 0 (0) | 2022.10.25 |
---|---|
1764 - 듣보잡 (0) | 2022.10.25 |
1676 - 팩토리얼 0의 개수 (0) | 2022.10.25 |
11723 - 집합 (0) | 2022.10.25 |
9095 - 1, 2, 3 더하기 (0) | 2022.10.24 |
Comments