728x90
https://www.acmicpc.net/problem/2164
문제 접근
- 전형적인 자료구조 활용문제
- FIFO 형태이니 큐를 활용하였음
코드
import queue
n = int(input())
q = queue.Queue()
for i in range(1, n+1):
q.put(i)
while(q.qsize() != 1):
q.get()
q.put(q.get())
print(q.get())
결론은 시간초과...그래서 큐를 안쓰고 문자열을 이용해봤다...결과는 마찬가지로 시간 초과..
n = int(input())
str_n = ''
for i in range(1, n+1):
str_n += str(i)
while(len(str_n) != 1):
str_n = str_n[1:]
str_n = str_n + str_n[0]
str_n = str_n[1:]
print(str_n)
정답 코드
from collections import deque
n = int(input())
deque = deque([i for i in range(1, n+1)])
while(len(deque) > 1):
deque.popleft()
move_num = deque.popleft()
deque.append(move_num)
print(deque[0])
결국 다른사람의 블로그를 본 뒤 이해했다..아직 갈길이 멀었다..
'알고리즘 > 백준 문제풀이' 카테고리의 다른 글
백준 - 11718(그대로 출력하기, python) (2) | 2023.05.29 |
---|---|
백준- 11650(좌표 정렬하기, python) (0) | 2023.05.26 |
백준 - 11050(이항 계수, python) (0) | 2023.05.24 |
백준-1018(체스판 다시 칠하기, python) (0) | 2023.05.23 |
백준 14501- 퇴사(kotlin) (0) | 2023.02.08 |