#ATagc057d. [AGC057D] Sum Avoidance

[AGC057D] Sum Avoidance

题目描述

给定正整数 S,KS, K。如果正整数序列 A=(A1,A2,,AN)A = (A_1, A_2, \ldots, A_N) 满足以下两个条件,则称其为好数列

  • 1A1<A2<<ANS11 \leq A_1 < A_2 < \cdots < A_N \leq S - 1
  • 对于任意非负整数序列 (x1,x2,,xN)(x_1, x_2, \ldots, x_N),都有 i=1NAixiS\sum_{i=1}^N A_i x_i \neq S

在所有项数 NN 最大的好数列中,选择字典序最小的那个,记为 A=(A1,A2,,AN)A = (A_1, A_2, \ldots, A_N)。请输出该数列的第 KKAKA_K。如果 K>NK > N,则输出 1-1

给定 TT 组测试数据,请分别输出每组的答案。

输入格式

输入按以下格式从标准输入读入。

TT
case1\text{case}_1
\vdots
caseT\text{case}_T

每组测试数据格式如下:

S KS\ K

输出格式

输出 TT 行,第 ii 行输出第 ii 组测试数据的答案。

样例 1

输入

13
3 1
3 2
7 1
7 2
7 3
7 4
10 1
10 2
10 3
10 4
10 5
2022 507
1000000000000000000 999999999999999999

输出

2
-1
2
4
6
-1
3
6
8
9
-1
1351
-1

说明/提示

数据范围

  • 1T10001 \leq T \leq 1000
  • 3S10183 \leq S \leq 10^{18}
  • 1KS11 \leq K \leq S - 1

样例解释 1

S=3,7,10S = 3, 7, 10 时,AA 分别为:

  • S=3S=3 时:A=(2)A = (2)
  • S=7S=7 时:A=(2,4,6)A = (2, 4, 6)
  • S=10S=10 时:A=(3,6,8,9)A = (3, 6, 8, 9)

由 ChatGPT 4.1 翻译