CF1656D.K-good

普及+/提高

通过率:0%

时间限制:3.00s

内存限制:256MB

AC君温馨提醒

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

题目描述

We say that a positive integer nn is kk-good for some positive integer kk if nn can be expressed as a sum of kk positive integers which give kk distinct remainders when divided by kk.

Given a positive integer nn, find some k≥2k \geq 2 so that nn is kk-good or tell that such a kk does not exist.

我们称一个正整数 nn 对某个正整数 kk 是 kk-好 的,如果 nn 可以表示为 kk 个正整数之和,且这 kk 个正整数除以 kk 所得的余数互不相同。

给定一个正整数 nn,请找出某个满足 k≥2k \geq 2 的整数 kk,使得 nn 是 kk-好的;若不存在这样的 kk,则说明其不存在。

输入格式

The input consists of multiple test cases. The first line contains a single integer tt (1≤t≤1051 \leq t \leq 10^5) — the number of test cases.

Each test case consists of one line with an integer nn (2≤n≤10182 \leq n \leq 10^{18}).

输入包含多个测试用例。第一行包含一个整数 tt(1≤t≤1051 \leq t \leq 10^5),表示测试用例的数量。

每个测试用例由一行组成,其中包含一个整数 nn(2≤n≤10182 \leq n \leq 10^{18})。

输出格式

For each test case, print a line with a value of kk such that nn is kk-good (k≥2k \geq 2), or −1-1 if nn is not kk-good for any kk. If there are multiple valid values of kk, you can print any of them.

对于每个测试用例,输出一行,包含一个值 kk,使得 nn 是 kk-好的(其中 k≥2k \geq 2);若 nn 对任意 kk 均不是 kk-好的,则输出 −1-1。若存在多个合法的 kk 值,输出其中任意一个即可。

输入输出样例

  • 输入#1

    5
    2
    4
    6
    15
    20

    输出#1

    -1
    -1
    3
    3
    5

说明/提示

66 is a 33-good number since it can be expressed as a sum of 33 numbers which give different remainders when divided by 33: 6=1+2+36 = 1 + 2 + 3.

1515 is also a 33-good number since 15=1+5+915 = 1 + 5 + 9 and 1,5,91, 5, 9 give different remainders when divided by 33.

2020 is a 55-good number since 20=2+3+4+5+620 = 2 + 3 + 4 + 5 + 6 and 2,3,4,5,62,3,4,5,6 give different remainders when divided by 55.

66 是一个 33-好数,因为它可以表示为 33 个数的和,而这 33 个数除以 33 所得的余数互不相同:6=1+2+36 = 1 + 2 + 3。

1515 也是一个 33-好数,因为 15=1+5+915 = 1 + 5 + 9,且 1,5,91, 5, 9 除以 33 所得的余数互不相同。

2020 是一个 55-好数,因为 20=2+3+4+5+620 = 2 + 3 + 4 + 5 + 6,且 2,3,4,5,62,3,4,5,6 除以 55 所得的余数互不相同。

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

首页