1039번 교환


1039번 교환

https://www.acmicpc.net/problem/1039 필요한 로직 : BFS [논리] TLE는 겪어봤어도 메모리 초과는 많이 못겪어봤는데, 이 문제는 중복 관리를 어떻게 하느냐에 따라 메모리 초과가 갈렸다. 메모리 제한이 걸린 경우는 vis를 set으로 관리하며 문자형 숫자의 두 자리를 swap한 결과들을 넣을 때였다. 애초에 set에 최대 10자리의 char가 반복해 들어가는 문제가 있었고, 그 대신에 cache[현재 숫자][그래프 레벨]에 bool값을 넣어서 메모리 사용을 줄이기로 했다. 또한 스왑 과정이 꽤 까다롭다. 너비 우선 탐색에 '너비'에는 문자열로 표현된 숫자의 두 자리를 swap하는 모든 경우를 넣게 되는데, 이를 위해 문자열을 리스트로 변환하..........

1039번 교환에 대한 요약내용입니다.

자세한 내용은 아래에 원문링크를 확인해주시기 바랍니다.



원문링크 : 1039번 교환