CF1512G.Short Task

普及+/提高

通过率:0%

时间限制:2.00s

内存限制:512MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Let us denote by d(n)d(n) the sum of all divisors of the number nn, i.e. d(n)=∑k∣nkd(n) = \sum\limits_{k | n} k.

For example, d(1)=1d(1) = 1, d(4)=1+2+4=7d(4) = 1+2+4=7, d(6)=1+2+3+6=12d(6) = 1+2+3+6=12.

For a given number cc, find the minimum nn such that d(n)=cd(n) = c.

我们用 d(n)d(n) 表示正整数 nn 的所有正因数之和,即 d(n)=∑k∣nkd(n) = \sum\limits_{k \mid n} k。

例如,d(1)=1d(1) = 1,d(4)=1+2+4=7d(4) = 1+2+4=7,d(6)=1+2+3+6=12d(6) = 1+2+3+6=12。

对于给定的数 cc,求满足 d(n)=cd(n) = c 的最小正整数 nn。

输入格式

The first line contains one integer tt (1≤t≤1041 \le t \le 10^4). Then tt test cases follow.

Each test case is characterized by one integer cc (1≤c≤1071 \le c \le 10^7).

第一行包含一个整数 tt(1≤t≤1041 \le t \le 10^4)。随后是 tt 个测试用例。

每个测试用例由一个整数 cc(1≤c≤1071 \le c \le 10^7)表征。

输出格式

For each test case, output:

  • "-1" if there is no such nn that d(n)=cd(n) = c;
  • nn, otherwise.

对于每个测试用例,输出:

  • 若不存在满足 d(n)=cd(n) = c 的 nn,则输出 “-1”;
  • 否则输出 nn。

输入输出样例

  • 输入#1

    12
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    39
    691

    输出#1

    1
    -1
    2
    3
    -1
    5
    4
    7
    -1
    -1
    18
    -1

输入解题思路,AI测评打分。不知道怎么写?

首页