CF2072A New World, New Me, New Array
题目描述
夏目章人(Natsume Akito)刚刚在一个新世界苏醒,便立即收到了他的第一个任务!系统为他提供了一个包含 $ n $ 个零的数组 $ a$,以及两个整数 $ k $ 和 $ p$。
在每次操作中,章人需要选择两个整数 $ i $ 和 $ x$(满足 $ 1 \le i \le n $ 且 $-p \le x \le p$),然后执行赋值操作 $ a_i = x$。
章人仍未完全适应如何控制他的新身体,因此请你帮他计算使数组所有元素之和等于 $ k $ 所需的最少操作次数,或者告诉他这是不可能的。
输入格式
第一行输入包含一个整数 $ t $($ 1 \le t \le 1000$)—— 测试用例的数量。
每个测试用例的唯一一行包含三个整数 $ n $, $ k $, $ p$($ 1 \le n \le 50$,$-2500 \le k \le 2500$,$ 1 \le p \le 50$)—— 分别表示数组长度、目标总和以及可替换数值的范围边界。
输出格式
对于每个测试用例,输出使数组最终总和为 $ k $ 所需的最少操作次数;若无法达成,则输出 $-1$。
说明/提示
第五个样例中,数组初始总和为零,因此无需任何操作。
第六个样例中,数组能达到的最大总和为 $ 9$(将唯一元素赋值为 $ 9$),因此无法通过任何操作得到总和 $ 10$。
第七个样例中,仅需一次操作 $ a_3 = -7$ 即可达成目标。
翻译由 DeepSeek R1 完成