아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

페리 수열의 길이

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

요약
각 데이터셋마다 N까지의 오일러 피 함수 합에 1을 더한 값을 출력합니다.
난이도

보통10점 중 4점

유형
정수론, 누적 합, 수학
정답자
아직 제출이 없습니다

문제

양의 정수 NN에 대해 0≤a≤b≤N0 \le a \le b \le N이고 gcd⁡(a,b)=1\gcd(a, b) = 1인 분수 a/ba/b를 모두 모아 작은 값부터 차례로 나열한 것을 차수 NN의 페리 수열이라고 한다.

예를 들어 차수 6의 페리 수열은 다음과 같다.

0/1, 1/6, 1/5, 1/4, 1/3, 2/5, 1/2, 3/5, 2/3, 3/4, 4/5, 5/6, 1/10/1,\ 1/6,\ 1/5,\ 1/4,\ 1/3,\ 2/5,\ 1/2,\ 3/5,\ 2/3,\ 3/4,\ 4/5,\ 5/6,\ 1/1

차수 NN의 페리 수열의 길이, 즉 그 안에 들어 있는 분수의 개수를 구하는 프로그램을 작성한다.

입력

첫째 줄에 데이터 집합의 개수 PP (1≤P≤100001 \le P \le 10000)가 주어진다. 각 데이터 집합은 서로 독립이고 처리 방법은 모두 같다.

다음 PP개의 줄에 데이터 집합이 한 줄에 하나씩 주어진다. 각 줄에는 데이터 집합 번호 KK (1≤K≤100001 \le K \le 10000)와 길이를 구할 페리 수열의 차수 NN (2≤N≤100002 \le N \le 10000)이 공백 하나로 구분되어 주어진다.

출력

데이터 집합마다 한 줄씩 출력한다. 각 줄에는 데이터 집합 번호 KK, 공백 하나, 차수 NN의 페리 수열의 길이를 십진 정수로 이어서 출력한다.

예제3

  1. 예제 1

    입력
    4
    1 6
    2 15
    3 57
    4 9999
    
    예상 출력
    1 13
    2 73
    3 1001
    4 30393487
    
  2. 예제 2

    입력
    1
    1 2
    
    예상 출력
    1 3
    
  3. 예제 3

    입력
    11
    1 2
    2 3
    3 4
    4 5
    5 6
    6 7
    7 8
    8 9
    9 10
    10 11
    11 12
    
    예상 출력
    1 3
    2 5
    3 7
    4 11
    5 13
    6 19
    7 23
    8 29
    9 33
    10 43
    11 47