반응형
문제
https://www.acmicpc.net/problem/4948
실제로 베르트랑 가설이 있었다.
이후 확장된 결과들도 많이있다.
최종적으로는 2010760보다 큰 모든 자연수에 대하여 과 사이에 적어도 하나의
소수가 존재한다는 명제를 증명했다고 한다.
https://ko.wikipedia.org/wiki/%EB%B2%A0%EB%A5%B4%ED%8A%B8%EB%9E%91_%EA%B3%B5%EC%A4%80
물론 우리가 풀 문제는 위 와 동일하고 입출력부분만 바꾸어 주면되기에 나머지는
코드만 올려야겠다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | import sys prime_number=[2 for _ in range(123456*2+1)] for i in range(1,123456*2+1): if i==1: prime_number[i]=0 elif prime_number[i]!=0: prime_number[i]=1 mul = 2 j = i while(j*mul<=123456*2): prime_number[j*mul]=0 mul+=1 while(1): n=int(sys.stdin.readline()) result=0 if n==0: break for i in range(n+1,2*n+1): if prime_number[i]==1: result+=1 print(result) | cs |
반응형
'알고리즘(python) > 수학' 카테고리의 다른 글
[Python]수학2 백준 1085 (0) | 2019.12.21 |
---|---|
[Python]수학2 백준 9020 (0) | 2019.12.21 |
[Python]수학2 백준 1929 (0) | 2019.12.20 |
[Python]수학2 백준 2581 (0) | 2019.12.20 |
[Python]수학2 백준 1978 (0) | 2019.12.20 |
최근댓글