SP1673 AMBM - Ambitious Manager

题目描述

Bogus 公司以一种奇怪的方式发放员工工资。工资每隔 $K$ 天发放一次,每天的工资数额为 $a_i$。一位刚从 Mismanagement 学院毕业的年轻经理发现,员工倾向于在 $K$ 天周期的末尾请假,因为那时工作负担最重。为了不逐一调整每个 $a_i$ 的值,这位经理提出了一种快速解决方案:他将第 $i$ 天的新工资定义为 $b_i = a_i + 2a_{i-1} + 2^2a_{i-2} + 2^3a_{i-3} + \cdots + 2^{i-1}a_1$。公司的一名员工 Baba 目前面临严重的财务危机,他需要在即将到来的周期结束时至少获得 $N$ 卢比。他希望通过选择性地工作来确保他的工资恰好等于 $N$ 卢比。你能帮他找到这样的工作日吗?

输入格式

输入的第一行包含一个整数 $T$($1 \le T \le 100$),表示测试用例的数量。每个测试案例由两行构成。第一行包含两个整数 $N$ 和 $K$($1 \le N \le 2^{63} - 1$,$1 \le K \le 50$),第二行则包含 $K$ 个用空格分隔的整数,表示每天的原始工资 $a_i$($1 \le a_i \le 1000$)。

输出格式

对于每个测试用例,请在一行中输出能达到目标工资 $N$ 的工作日的索引(从1开始计数),并按升序排列,索引之间用空格隔开。如果有多个可能的答案,输出任意一个即可。如果没有这样的答案,输出 -1。 **本翻译由 AI 自动生成**