만드는 중입니다

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

분할

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

요약
k가 주어지면 한쪽 부분의 LCM이 다른 쪽의 GCD와 같아지는 분할이 정확히 k가지 나오는, 서로 다른 양의 정수 집합 중 원소 수가 가장 적은 것을 찾습니다. 각 수는 소인수분해로 출력합니다.
난이도

어려움10점 중 9점

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

문제

Brian은 전설의 수 집합(Legendary Set of Numbers)을 찾았다. 신비로운 성질을 가진다고 알려진 양의 정수들의 집합이다. Brian은 매우 친절한 사람이라서 이 집합을 가장 가까운 친구 둘, Abhilash와 Kevin과 나누기로 했다. 두 친구는 사소한 자극에도 다투기 때문에, Brian은 집합을 공평하게 나눠야 한다.

Abhilash는 LCM, 즉 최소공배수를 좋아한다. 집합의 LCM은 모든 원소로 나누어떨어지는 가장 작은 양의 정수다. Kevin은 GCD, 즉 최대공약수를 좋아한다. 집합의 GCD는 모든 원소를 나누는 가장 큰 양의 정수다.

Brian은 집합을 두 부분으로 나눠서, Abhilash가 받는 부분의 LCM이 Kevin이 받는 부분의 GCD와 같아지게 하려 한다. 그는 전설의 수 집합에서 그런 분할을 곧바로 찾았다. 더 따져 보니 정확히 4242가지 방법으로 나눌 수 있었다!

Brian은 이것이 우연이 아니라고 본다. 전설의 수 집합이기 때문이다. 그는 한 부분의 LCM이 다른 부분의 GCD가 되는 분할이 정확히 4242가지인 집합 중 가장 작은 것이 이 집합인지 궁금해한다. 42 말고 다른 값에 대해서도 생각해 본다. 구체적으로, 서로 다른 양의 정수 nn개로 이루어진 집합 중에서, 한 부분의 LCM이 다른 부분의 GCD가 되는 분할이 정확히 kk가지인 집합이 존재하는 가장 작은 nn은 얼마인가?

Brian은 이 답이 맞다는 것을 보이려고, 그런 집합의 예도 함께 제시해 달라고 한다. 수가 매우 커질 수 있으므로, 각 수는 소인수분해한 형태로 주고 오름차순으로 정렬한다.

집합 SS의 분할이란, 공집합이 아닌 두 집합 AA, BB로서 A⊂SA \subset S, B⊂SB \subset S, A∪B=SA \cup B = S, A∩B=∅A \cap B = \emptyset을 만족하는 쌍을 말한다. k=1k = 1인 경우 가장 작은 집합은 {1,4,5}\{1, 4, 5\}이다. 가능한 분할은 {1}\{1\}과 {4,5}\{4, 5\} 하나뿐이고, {1}\{1\}의 LCM과 {4,5}\{4, 5\}의 GCD는 모두 1이다.

입력

입력은 한 줄이며, 정수 kk (1≤k≤1041 \leq k \leq 10^4) 하나가 주어진다.

출력

한 줄에 위 조건을 만족하는 집합의 최소 크기 nn을 출력한다.

이어서 nn줄을 출력한다. ii번째 줄은 집합에서 ii번째로 작은 수를 나타낸다. 각 줄은 f p1 q1 p2 q2 … pf qff\ p_1\ q_1\ p_2\ q_2\ \dots\ p_f\ q_f 형식이며, 인접한 수는 공백으로 구분한다. 여기서 ff는 그 수의 서로 다른 소인수 개수이고, 1≤i≤f1 \leq i \leq f에 대해 pip_i는 소인수, qiq_i는 그 중복도다. 값은 0≤f≤1030 \leq f \leq 10^3, 2≤pi≤2⋅1032 \leq p_i \leq 2 \cdot 10^3, 1≤qi≤1051 \leq q_i \leq 10^5를 만족해야 한다.

예제1

  1. 예제 1

    입력
    1
    
    예상 출력
    3
    0
    1 2 2
    1 5 1