[4948] 베르트랑 공준 (소수의 개수)

2023. 6. 16. 11:42·Coding Test/Math
728x90
 

4948번: 베르트랑 공준

베르트랑 공준은 임의의 자연수 n에 대하여, n보다 크고, 2n보다 작거나 같은 소수는 적어도 하나 존재한다는 내용을 담고 있다. 이 명제는 조제프 베르트랑이 1845년에 추측했고, 파프누티 체비쇼

www.acmicpc.net

 

분석

  • 자연수 n에 대하여, n보다 크고, 2n보다 작거나 같은 소수는 적어도 하나 존재한다
  • 자기자신 포함하지 않음
 

[1929] 소수 구하기 (에라토스테네스 방식, 2부터 배수 제거)

1929번: 소수 구하기 첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다. www.acmicpc.net 분석 1 ≤ M ≤ N ≤ 1,000,000

karla.tistory.com

 

풀이

"""
베르트랑 공준은 임의의 자연수 n에 대하여, n보다 크고, 2n보다 작거나 같은 소수는 적어도 하나 존재한다는 내용을 담고 있다.
10보다 크고, 20보다 작거나 같은 소수는 4개가 있다. (11, 13, 17, 19)
14보다 크고, 28보다 작거나 같은 소수는 3개가 있다. (17,19, 23)
자연수 n이 주어졌을 때, n보다 크고, 2n보다 작거나 같은 소수의 개수를 구하는 프로그램
입력의 마지막에는 0
1 ≤ n ≤ 123,456
"""
import math

m=123456*2
list = [0] * (m+1)

for i in range(2, m+1):
    list[i] = i

for i in range(2, int(math.sqrt(m))+1):
   if list[i] == 0:
       continue
   for j in range(i+i, m+1, i):
       list[j] = 0

while True:
    n=int(input())
    if n==0:
        break

    cnt=0
    if n<3:
        cnt=1
    else:
        for i in range(n,2*n+1):
            if list[i]!=0 and n!=list[i]:
                cnt+=1
    print(cnt)

 

 

 

728x90
저작자표시 비영리 변경금지 (새창열림)
'Coding Test/Math' 카테고리의 다른 글
  • [1676] 팩토리얼 0의 개수
  • [1193] 분수찾기
  • [9613] GCD 합 (조합)
  • [1011] Fly me to the Alpha Centauri
Karla Ko
Karla Ko
𝘾𝙤𝙣𝙩𝙞𝙣𝙪𝙤𝙪𝙨𝙡𝙮 𝙄𝙢𝙥𝙧𝙤𝙫𝙞𝙣𝙜, 𝘾𝙤𝙣𝙨𝙩𝙖𝙣𝙩𝙡𝙮 𝘿𝙚𝙫𝙚𝙡𝙤𝙥𝙞𝙣𝙜 𝙔𝙚𝙨!
    250x250
  • Karla Ko
    karlaLog
    Karla Ko
  • 전체
    오늘
    어제
    • Total (467)
      • Spring (19)
      • JPA (4)
      • Cloud & Architecture (15)
        • Kubernetes (5)
        • Docker (3)
        • MSA (2)
        • GCP (1)
        • AWS (4)
      • Devops (1)
      • Message Queue (4)
        • Kafka (2)
        • RabbitMQ (2)
      • Git (4)
      • DB (4)
      • Java (9)
      • Python (4)
      • CS (11)
        • OS (8)
        • Network (2)
        • Algorithm (1)
      • Coding Test (392)
        • programmers (156)
        • Graph (43)
        • DP (37)
        • Search (31)
        • Tree (13)
        • Data Structure (26)
        • Combination (12)
        • Implement (18)
        • Geedy (23)
        • Sort (7)
        • Math (21)
        • geometry (2)
  • 블로그 메뉴

    • 홈
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    월간코드챌린지
    구현
    구간합
    조합
    DP
    파이썬
    BFS
    스택
    그래프
    덱
    힙
    큐
    최대공약수
    재귀
    동적계획법
    이분탐색
    알고리즘
    최단거리
    LIS
    트리
    다익스트라
    프로그래머스
    DFS
    Algorithm
    정렬
    최소신장트리
    자료구조
    플로이드워셜
    백준
    그리디
  • hELLO· Designed By정상우.v4.10.3
Karla Ko
[4948] 베르트랑 공준 (소수의 개수)
상단으로

티스토리툴바