백준_11866_요세푸스 문제 0

임정민·2022년 12월 19일
2

알고리즘 문제풀이

목록 보기
10/173
post-thumbnail

코딩테스트 연습 스터디 진행중 입니다. ✍✍✍
Notion : https://www.notion.so/1c911ca6572e4513bd8ed091aa508d67

문제

https://www.acmicpc.net/problem/11866

풀이

[나의 풀이]

if __name__ == '__main__':
    import sys
    from collections import deque
    input = sys.stdin.readline
    
    n,k = map(int,input().split())
    data = [i for i in range(1,n+1)]
    output = []
    queue1 = deque(data)

    while(len(queue1)!=0):
        queue1.rotate(-(k-1))
        a = queue1.popleft()
        output.append(a)
    print(str(output).replace('[','<').replace(']','>'))

[팀원의 풀이1]

# coding = utf-8

if __name__ == '__main__':
    import sys
    input = sys.stdin.readline
    from collections import deque

    n, k = map(int, input().split())
    num_list = deque(i for i in range(1, n+1))
    result = list()
    print('<',end="")
    while len(num_list) != 1 :
        for _ in range(k-1) :
            num_list.append(num_list.popleft())
        print(num_list.popleft(), end=", ")
    print(num_list.popleft(), end=">")

[팀원의 풀이2]

# coding = utf-8

import sys
input = sys.stdin.readline

N_N = list(map(int,input().split()))

list_num = list(range(1, N_N[0]+1))
list_out = []

num_index = N_N[1]
while len(list_num) != 0 :
    list_out.append(list_num.pop(num_index-1))
    num_index -= 1
    num_index += N_N[1]
    
    if len(list_num) > 0 :
        while num_index > len(list_num) :
            num_index -= len(list_num)
        


str_num = ", ".join(map(str,list_out))

print(f'<{str_num}>')
    
profile
https://github.com/min731

0개의 댓글