duruu841   2년 전

문제에선 10,000 보다 작거나 같은 셀프넘버를 구해야 하지만 출력이 너무 길어져서 일단 30보다 작거나 같은 셀프넘버를 찾는 알고리즘을 구현하려고 했습니다.
1) 1~30을 self_num 리스트에 담고 각 요소에 접근해서 d(i)를 호출했습니다

2) i=1면 1이 생성자인, d(1)가 li 리스트에 추가되고 재귀 호출로 d(d(1))이 li 리스트에 추가되는 방식으로 셀프넘버가 아닌 수를 li에 담았습니다

3) self_num 리스트에서 li 있는 요소들은 전부 remove하고, self_num을 출력하였습니다.

그런데 문제는 6과 같이 self_num에 없어야 하는 수들이 self_num에 출력되는 현상이 나타납니다... 왜 그런걸까요...?

댓글을 작성하려면 로그인해야 합니다.