본문 바로가기
코딩 문제풀이 및 연습/Python 연습(수학)

[Python] 백준 4928 베르트랑 공준

by 1chanhue1 2022. 2. 8.

 

 

 

 

이 문제를 해결하기위해 전에 풀었던 (백준 1929) 문제에서 소수 구하는 방법, 제곱근이 있는 수

중에 약수가 있으면 false를 반환하는 방법(isPrime 함수)를 사용하여 문제를 해결하려고 했으나

시간초과가 발생하였다. 입력받은 n값과 그 범위에 따라 모든 수를 고려했기 때문이다. 

 

 

 

 

 

처음에 짠 코드 (시간초과 발생)

 

 

 

 

 

 

 

시간초과 문제를 해결하기 위해서 문제에서 제한한 범위 1<=n<123456*2 안에서의 소수를

리스트에 저장하고 입력된 범위 내에서 값이 리스트 내에 있으면 카운트 하는 방식으로 구현했다. 

 

 

 

 

 

시간초과 해결을 위해 짠 코드