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

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

아름다운 멀티셋

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

요약
합이 n이고 1부터 n까지의 모든 값을 부분합으로 유일하게 나타내는 양의 정수 중복집합에 대해, 원소 개수의 합을 10^9 근처의 소수로 나눈 나머지를 구한다.
난이도

어려움10점 중 9점

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

문제

양의 정수로 이루어진 멀티셋 A={a1,a2,…,ak}A = \{a_1, a_2, \ldots, a_k\}의 원소 합이 nn이고, 11부터 nn까지의 모든 정수를 원소들의 합으로 순서를 구분하지 않고 유일하게 나타낼 수 있으면 AA를 nn-아름답다고 부른다. 예를 들어 {1,2,4}\{1, 2, 4\}는 77-아름답고, {1,1,3}\{1, 1, 3\}은 55-아름답다. 정수 nn이 주어질 때 다음 합을 구하라. [\left(\sum\limits_{A\text{ is }n\text{-beautiful}}|A| \right) \bmod p.]

각 nn에 대한 답을 계산할 때 p=109+7p = 10^9 + 7 또는 p=109+9p = 10^9 + 9를 직접 선택할 수 있다.

입력

첫째 줄에 정수 tt (1≤t≤51 \le t \le 5)가 주어진다. 이는 입력 파일의 테스트 케이스 수이다.

다음 tt개의 줄에 각각 정수 nin_i (1≤ni≤10161 \le n_i \le 10^{16})가 주어지며, 이에 대한 답을 출력해야 한다. 한 파일에 주어지는 모든 nin_i는 서로 다르다.

출력

tt개의 줄을 출력한다. ii번째 줄에는 nin_i에 대한 답을 출력한다. 각 답은 p=109+7p = 10^9 + 7 또는 p=109+9p = 10^9 + 9 중 하나로 정확해야 하며, pp는 테스트 케이스마다 독립적으로 선택할 수 있다. 선택한 pp는 출력하지 않고 답의 나머지만 출력한다.

예제3

  1. 예제 1

    입력
    5
    1
    2
    3
    4
    5
    
    예상 출력
    1
    2
    5
    4
    11
    
  2. 예제 2

    입력
    5
    6
    7
    8
    9
    10
    
    예상 출력
    6
    18
    12
    19
    10
    
  3. 예제 3

    입력
    5
    99
    17
    14
    24
    38
    
    예상 출력
    572
    64
    26
    32
    66