6523 - 嘉年华灯语

题目描述

嘉年华的横琴主题展台要点亮一排灯。从左到右,灯的状态排成字符串 S:

  • 1 表示必须亮;
  • 0 表示必须灭;
  • ? 表示可以自行决定。

亮灯记作二进制数字 1,灭灯记作 0,左边是高位,允许前导 0。

最终必须恰好亮 K 盏灯,同时灯语编号不能超过十进制上限 B。

请将每个 ? 改为 0 或 1,使最终编号尽可能大。若无法同时满足要求,输出 -1。

输入

第一行输入整数 K 和 B。

第二行输入字符串 S。所有输入整数均以十进制给出。

输出

输出一个十进制整数,表示最大合法灯语编号;无解时输出 -1。

样例

输入

2 18
?0???

输出

18

输入

2 8
1??1

输出

-1
说明

【样例 1 解释】

可点亮为 10010,恰有 2 盏亮灯,编号 18 不超过上限。

【样例 2 解释】

两盏固定亮灯已构成 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 专项赛先锋组。

标签
题目参数
时间限制 1 秒
内存限制 512 MB
提交次数 2
通过人数 1
金币数量 1 枚
难度 入门


上一题 下一题