嘉年华的横琴主题展台要点亮一排灯。从左到右,灯的状态排成字符串 S:
1 表示必须亮;0 表示必须灭;? 表示可以自行决定。亮灯记作二进制数字 1,灭灯记作 0,左边是高位,允许前导 0。
最终必须恰好亮 K 盏灯,同时灯语编号不能超过十进制上限 B。
请将每个 ? 改为 0 或 1,使最终编号尽可能大。若无法同时满足要求,输出 -1。
第一行输入整数 K 和 B。
第二行输入字符串 S。所有输入整数均以十进制给出。
输出一个十进制整数,表示最大合法灯语编号;无解时输出 -1。
2 18 ?0???
18
2 8 1??1
-1
可点亮为 10010,恰有 2 盏亮灯,编号 18 不超过上限。
两盏固定亮灯已构成 1001,即 9,超过上限 8。
1 \le |S| \le 60,0 \le K \le |S|,0 \le B \le 10^{18}。S 仅由 0、1、? 组成。
| 测试点 | 附加限制 |
|---|---|
| 01—03 | ? 的个数不超过 18 |
| 04—06 | 字符串长度不超过 25 |
| 07—10 | 完整范围 |
2026 年横琴粤澳深度合作区人工智能大赛暨第八届粤港澳青少年机器人大赛,GoC 专项赛先锋组。