백준
백준 1158번 어떻게 풀었나.
kimbro6
2023. 1. 12. 00:01
- 푼 방법
- i에 K를 계속 더해주는데, len(A)보단 작아야 한다는 조건을 구현하려 했다.
- 고치면 좋을 부분
- 처음엔, 변수 i가 len(A)보다 작아질때까지 i - len(A)를 해 줬다.
그런데 다시 생각해 보니까 그건 % len(A)와 똑같은 작업이었다.
이런걸 처음부터 생각해 내고 싶다.
- 처음엔, 변수 i가 len(A)보다 작아질때까지 i - len(A)를 해 줬다.
코드
import sys
N, K = map(int, sys.stdin.readline().rstrip().split())
A = list(i+1 for i in range(N))
i = 0
answer = []
while A:
i = (i+K-1) % len(A)
answer.append(A.pop(i))
print("<"+", ".join(map(str, answer))+">")
참고