CF1656D K-good
题目描述
我们称一个正整数 $n$ 对于某个正整数 $k$ 是 $k$-好数,如果 $n$ 能被表示为 $k$ 个正整数之和,并且这 $k$ 个正整数在除以 $k$ 时得到的余数互不相同。
给定一个正整数 $n$,请你找出某个 $k \geq 2$,使得 $n$ 是 $k$-好数,或者说明不存在这样的 $k$。
输入格式
输入包含多组测试数据。第一行包含一个整数 $t$($1 \leq t \leq 10^5$),表示测试用例的数量。
每个测试用例占一行,包含一个整数 $n$($2 \leq n \leq 10^{18}$)。
输出格式
对于每个测试用例,输出一行,包含一个 $k$ 的值,使得 $n$ 是 $k$-好数($k \geq 2$),如果不存在这样的 $k$,输出 $-1$。如果有多个合法的 $k$,你可以输出其中任意一个。
说明/提示
$6$ 是一个 $3$-好数,因为它可以表示为 $3$ 个数之和,这 $3$ 个数除以 $3$ 时余数各不相同:$6 = 1 + 2 + 3$。
$15$ 也是一个 $3$-好数,因为 $15 = 1 + 5 + 9$,且 $1, 5, 9$ 除以 $3$ 时余数各不相同。
$20$ 是一个 $5$-好数,因为 $20 = 2 + 3 + 4 + 5 + 6$,且 $2, 3, 4, 5, 6$ 除以 $5$ 时余数各不相同。
由 ChatGPT 4.1 翻译