만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

서로소인 수

시간 제한1초메모리 제한1024 MB

요약
정수 n, k, c가 주어집니다. n과 서로소인 수를 오름차순으로 나열한 목록에서 k번째 수부터 c개를 출력합니다.
난이도

보통10점 중 6점

유형
정수론, 수학, 이분 탐색
정답자
아직 제출이 없습니다

문제

바이타자르는 최근 서로소인 수에 관심을 갖게 되었다. 자연수 x와 자연수 y의 최대공약수가 1이면 x는 y와 서로소이다. 예를 들어 10과 서로소인 수는

1, 3, 7, 9, 11, 13, 17, ...

이다.

바이타자르는 n과 서로소인 수를 작은 수부터 차례로 모두 적었다. 이 목록을 액자에 넣고 바이타자르의 목록이라고 부른다.

벽에 걸기 전에 목록이 올바른지 확인하려 한다. 목록은 무한하므로, k번째 원소부터 길이 cc인 구간만 골라 확인하려 한다. 원소는 1번부터 번호를 매긴다. 이 문제를 도와줄 수 있는가?

입력

첫 줄에 자연수 nn, kk, cc가 주어진다 (2≤n≤10142 \le n \le 10^{14}, 1≤k≤10141 \le k \le 10^{14}, 1≤c≤1000001 \le c \le 100000). 각각 바이타자르가 고른 수, 확인할 구간의 시작 위치, 구간의 길이이다.

출력

바이타자르의 목록에서 k번째, k+1번째, ..., k+c-1번째 원소를 공백 한 칸으로 구분하여 출력한다. 목록은 nn과 서로소인 수를 오름차순으로 나열한 것이다.

힌트

예시에서 바이타자르는 목록의 3, 4, 5, 6번째 원소를 묻는다. n=10n = 10이면 목록은 1, 3, 7, 9, 11, 13, 17, ... 순서로 시작한다.

예제1

  1. 예제 1

    입력
    10 3 4
    
    예상 출력
    7 9 11 13