1644번. 소수의 연속합
문제 링크
풀이 코드
- 에라토스테네스의 체와 두포인터를 사용하는 문제입니다.
- 먼저 체를 통해서 소수들만 골라줍니다.
- 두포인터를 사용하여 현재 합이 n보다 작으면 오른쪽으로 늘려주고, 크면 왼쪽을 빼줍니다.
- 같을 경우는 오른쪽을 늘려줍니다.
- 아래 코드에서는 pList의 범위를
n+1
로 잡았지만, 마음 편하게4000000+1
로 잡고 아래int(math.sqrt(n) + 1
도3000
정도로 잡는 것이 편합니다. (실제로 제출은 이렇게 했습니다!)
1 |
|