
소스 코드(itertools 사용)
에서 itertools 수입 순열
N,엠 = 목록(지도(내부,기입().분할()))
에스 = 목록(지도(내부,기입().분할()))
시간 = 정렬(목록(순열(에스,중)))
~을 위한 나 ~ 안에 온도:
누르다(”.연결하다(지도(거리,나)))

소스 코드(재귀 포함)
N,엠 = 목록(지도(내부,기입().분할()))
결과 = 목록(지도(내부,기입().분할()))
결과 = 정렬(시퀀스)
에스 = ()
데프 dfs(시작하다):
만약에 렌(에스) == m:
누르다(”.연결하다(지도(거리,에스)))
돌려 주다
~을 위한 나 ~ 안에 시퀀스:
만약에 나 ~ 아니다 ~ 안에 에스:
s. 붙이다(나)
dfs(나)
에스팝()
dfs(하나)
생각
1 itertool 사용 및 한 번 정렬
2번에서는 정렬과 재귀를 사용하여 알고리즘을 작성했습니다.
시간은 1회 미만, 메모리 소모는 2회 미만인 것으로 나타났다.
알고리즘 설명 -> https://codekunst.49