AT_abc301_d.[ABC301D] Bitmask
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定一个由 0、1、? 组成的字符串 S 和一个整数 N。将 S 中的每个 ? 替换为 0 或 1,并将其视为二进制整数,得到的所有可能值的集合记为 T。例如,当 S= ?0? 时,T={000(2),001(2),100(2),101(2)}={0,1,4,5}。
请输出 T 中不超过 N 的最大值(以十进制整数形式输出)。如果 T 中没有不超过 N 的值,则输出 -1。
输入格式
输入以以下格式从标准输入读入。
S N
输出格式
请输出答案。
输入输出样例
输入#1
?0? 2
输出#1
1
输入#2
101 4
输出#2
-1
输入#3
?0? 1000000000000000000
输出#3
5
说明/提示
限制条件
- S 由
0、1、?组成。 - S 的长度为 1 到 60。
- 1≤N≤1018。
- N 是整数。
样例解释 1
如题目中所示,T={0,1,4,5}。T 中不超过 N 的值为 0 和 1,其中最大的是 1,因此输出 1。
样例解释 2
T={5},因此 T 中没有不超过 N 的值。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?