만드는 중입니다

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

에르되시-스트라우스 추측

시간 제한5초메모리 제한512 MB

요약
각 n에 대해 4/n = 1/a + 1/b + 1/c를 만족하는 양의 정수 a ≤ b ≤ c 가운데 사전식으로 가장 앞선 세 수를 구합니다.
난이도

보통10점 중 5점

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

문제

브로카르 에르되시-스트라우스 추측은 2보다 큰 모든 정수 n에 대해, 다음 식을 만족하는 양의 정수 a ≤ b ≤ c가 존재한다는 것이다: 4n=1a+1b+1c\frac{4}{n} = \frac{1}{a} + \frac{1}{b} + \frac{1}{c} (1) 해는 여러 개일 수 있다. 예를 들어 4/18=1/9+1/10+1/90=1/5+1/90+1/90=1/5+1/46+1/24704/18 = 1/9 + 1/10 + 1/90 = 1/5 + 1/90 + 1/90 = 1/5 + 1/46 + 1/2470 이다. 이 추측은 아직 증명되지 않았지만, n≤50,000n \le 50,000 범위에서는 반례가 없음이 분명하다. 이 문제에서는 2 이상 50000 이하의 정수 n을 입력받아, 식 (1)을 만족하는 a, b, c 중 사전순으로 가장 작은 세 정수를 출력하는 프로그램을 작성한다. 즉 입력에 대한 다른 해 a1, b1, c1이 있다면 a < a1이거나, a = a1이고 b ≤ b1이어야 한다.

입력

첫 줄에 데이터 세트의 개수 P (1 ≤ P ≤ 1000)가 정수로 주어진다. 각 데이터 세트는 같은 방식으로 독립적으로 처리한다. 각 데이터 세트는 한 줄이며, 데이터 세트 번호 K, 공백 한 칸, 정수 n (2 ≤ n ≤ 50000)이 주어진다.

출력

각 데이터 세트마다 한 줄을 출력한다. 이 줄에는 데이터 세트 번호 K, 공백 한 칸, 그리고 a, b, c를 이 순서대로 공백으로 구분하여 출력한다.

예제1

  1. 예제 1

    입력
    5
    1 13
    2 529
    3 49849
    4 49850
    5 18
    
    예상 출력
    1 4 18 468
    2 133 23460 71764140
    3 12463 207089366 11696183113896622
    4 12463 310640276 96497380762715900
    5 5 46 2070