#P6380. 『MdOI R2』Mayuri
『MdOI R2』Mayuri
题目背景
「万由里……怎么会?为什么你要……」
『我是灵力的结晶体,实施了封印,我当然会消失,不是吗?』
「封印?但是你和我……」
『第一次见面不能封印吗?笨蛋,我可是从大家的灵力里出生的,怎么可能讨厌你?从一出生,我就爱着你。』
「万由里……」
『虽然我竭力不让自己去想,但我一定是很羡慕大家……』
「等一下,万由里,不要消失……」
『但是我还是有一件能向大家炫耀的事,只有我和士道一样……』
「一样?」
『我已经不再是只为了消失而出生的生命。因为我遇见了你……已经足够了。』
「万由里……」
『谢谢你,士道。 』
题目描述
在离开这个世界前,万由里想要寻找属于她的 Lucky Number。
万由里会给出一个数 ,以及一个长度为 的 01 串 。
简单的说,她的 Lucky Number 是满足以下条件的正整数 :
-
的位数为 且不含前导 。
-
若 的第 位为 ,则 的前 位组成的数是 的倍数,否则 的前 位组成的数不是 的倍数。
对于一个数,前 位组成的数是指这个数前 个数码依次拼接形成的数。例如 前 位组成的数为 ,前 位组成的数为 。
现在,请你帮助万由里计算一下,她的 Lucky Number 是多少。
由于满足条件的数可能会有多个,你需要输出最小的一个。若不存在,则请输出 -1
。
输入格式
输入数据由两行构成。
第一行两个整数 ,意义见题目描述。
第二行一个长度为 的字符串 。
输出格式
一行,满足条件的最小的数 。如果不存在满足条件的数,输出 -1
。
2 2
01
10
10 1
1
-1
6 6
110100
601210
提示
【帮助与提示】
为方便选手测试代码,本题额外提供一组附加样例供选手使用。
【样例解释】
对于样例一, 是 位数,且 的前 位组成的数 不是 的倍数,而前 位组成的数 是 的倍数。由于 已经是最小的两位数,故不存在比 更小的满足条件的数。
对于样例二,我们需要构造一个 位数,满足这个 位数整除 。显然,这样的数不存在。
【数据范围】
本题采用捆绑测试
子任务编号 | 分值 | ||
---|---|---|---|
Subtask 1 | |||
Subtask 2 | |||
Subtask 3 | |||
Subtask 4 | |||
Subtask 5 |
对于全部数据,保证 ,, 中只包含 0
和 1
。