결론부터 말하자면 PriorityQueue는 스레드 안전 클래스이고 heapq는 스레드 안전을 보장하지 않는다.PriorityQueue는 스레드 안전을 위한 lock을 제공하기 때문에 잠금 오버 헤드가 있어 시간초과가 났던 것이다.
코드 둘 다 \[0,0,0,0,0,0,0,0,0]을 만든다. 그렇다면 어떤 차이가 있을까?0의 숫자를 1로 바꿔보자생각대로라면 \[1,0,0,0,0,0,0,0,0]이 나와야 한다. 하지만 \[\[0]\*3]\*3 의 코드로 작성한 경우 \[1,0,0,1,0,0,1,0,