728x90
반응형
1. 문제 설명
2. 풀이과정
- sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys
- popleft() 함수를 사용하기 위해 deque 자료구조를 활용했고, deque 자료구조를 사용하기 위해 deque 모듈을 불러온다. from collections import deque
- 인원 수와 제거할 위치를 입력받는다. N, K = map(int, sys.stdin.readline().split())
- 1번부터 인원수만큼 번호를 deque 자료로 생성한다. queue = deque(list(i for i in range(1, N + 1)))
- 처음 <를 출력해 주고 줄 바꿈 하지 않는다. print("<", end='')
- 모든 사람이 제거될 때까지 반복하며 while (queue)
- 제거할 위치 이전까지 앞사람들을 모두 제일 뒤로 보낸다. for _ in range(K - 1): queue.append(queue.popleft())
- 만약 현재 사람이 제거되는 마지막 사람이 아니라면 if (len(queue) > 1)
- 제거되는 사람을 출력하고 줄 바꿈 대신 ,(콤마)와 공백을 출력한다. print(queue.popleft(), end=', ')
- 반면에 현재 사람이 제거되는 마지막 사람이라면 else
- 제거되는 사람을 출력하고 줄 바꿈 대신 >를 출력한다. print(queue.popleft(), end='>')
반응형
3. 소스코드
import sys
from collections import deque
N, K = map(int, sys.stdin.readline().split())
queue = deque(list(i for i in range(1, N + 1)))
print("<", end='')
while (queue):
for _ in range(K - 1):
queue.append(queue.popleft())
if (len(queue) > 1):
print(queue.popleft(), end=', ')
else:
print(queue.popleft(), end='>')
728x90
반응형
'백준' 카테고리의 다른 글
[백준] 11724번 : 연결 요소의 개수 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.16 |
---|---|
[백준] 10816번 : 숫자 카드 2 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.15 |
[백준] 2444번 : 별 찍기 - 7 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.14 |
[백준] 9461번 : 파도반 수열 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.13 |
[백준] 11721번 : 열 개씩 끊어 출력하기 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.11 |
[백준] 10866번 : 덱 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.10 |
[백준] 1002번 : 터렛 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.09 |
[백준] 1912번 : 연속합 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.08 |