arr = [[]]*(N+1) 이런 식으로 할당을 하면, 리스트 안의 요소 리스트들이 모두 같은 참조값을 같는 듯 하다. 그래서 어떤 인덱스의 요소 리스트를 수정하면 모든 요소 리스트들이 똑같이 수정된다.
예를 들어 arr[2].append("asd")를 하면
[[],[],["asd"],[],[]]이 아니라
[["asd"],["asd"],["asd"],["asd"],["asd"]] 요렇게 되버린다.
이럴 때는 arr = [[] for i in range(N+1)]
요렇게 리스트 컴프리헨션으로 할당해주면 된다.