3
Josephus_problem을 찾고 있는데 그 결과가 예상하지 않습니다. 왜?Python의 목록에 추가 할 때 이상한 동작이 발생했습니다.
def J(n,x):
li=range(1,n+1)
k=0
res=[]
while len(li)>1:
k= (x+k-1) % len(li)
li.pop(k)
res.append(li)
#print li
return res
print J(5,3)
예상 출력 :
[1, 2, 4, 5]
[2, 4, 5]
[2, 4]
[4]
실제 출력 : 현재 목록의 사본을 추가 할 필요가
[[4], [4], [4], [4]]