[SWEA D3] 5291. [파이썬 S/W 문제해결 최적화] 7일차 - 소수의 합 Python

손주애·2020년 12월 17일
0

코딩테스트

목록 보기
15/22

import math

T = int(input())

for test_case in range(1, T + 1):
    result = []
    a, b = map(int, input().split())
    array = [True for _ in range(b)]
    # 에라토스테네스의 체
    for i in range(2, int(math.sqrt(b))+1):
        if array[i]:
            j = 2
            while i * j < b:
                array[i * j] = False
                j += 1

    result = [i for i in range(len(array)) if array[i]]
    idx = 0
    for i in range(len(result)):
        if result[i] > a:
            idx = i
            break

    print(f'#{test_case} {sum(result[idx:])}')

profile
백엔드 개발자입니다:)

0개의 댓글