dohjh0219   1년 전

해당 문제의 예시 및 여러가지 반례들에 정상적으로 코드가 작동하나 시간초과로 실패합니다. 시간초과를 줄이기 위한 효과적인 해결방안이 있으시다면 알려주십시오.!!

cinador   1년 전

num - j 가 소수인지 확인하는데에 save_list에 count함수를 적용한 것이 가장 큰 원인이라고 생각됩니다. count 함수는 리스트의 원소를 전부 확인합니다.

10000 이하의 소수는 약 1200개인데 만약 1000번째 소수 하나만 입력으로 넣어줘도 if num - j >= 0에 1000번 걸리기 때문에 이 부분에만 약 120만번의 연산이 진행됩니다.

 count 함수를 안쓰고 num - j가 소수인지 확인하는 방법을 생각해보시면 좋을 거 같습니다. (사실 num - j에 위에서 정의한 소수 판별 함수를 쓰는게 위 방법보다 더 효율적입니다.)

dohjh0219   1년 전

정성스러운 답변 감사합니다! 잘 적용해 보도록 하겠습니다~~!!

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