AT_arc119_b.[ARC119B] Electric Board
普及+/提高
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
现在,电光显示屏上显示着一个由 0 和 1 组成的长度为 N 的字符串 S。
你可以进行任意次数如下操作。这里,电光显示屏上字符串的第 i 个字符记作 Si(1≤i≤N)。
操作 选择一组整数 (l,r)(1≤l<r≤N),并满足以下两个条件之一,然后交换 Sl 和 Sr:
- $S_l = $
0且 $S_{l+1} = \cdots = S_r = $1。- $S_l = \cdots = S_{r-1} = $
1且 $S_r = $0。
请判断能否通过若干次操作将显示屏上的字符串变为 T,如果可以,输出所需操作次数的最小值;如果不可以,输出 −1。
输入格式
输入以如下格式从标准输入给出:
N S T
输出格式
如果无法将显示屏上的字符串变为 T,请输出 −1。
如果可以,请输出所需操作次数的最小值。
输入输出样例
输入#1
7 1110110 1010111
输出#1
2
输入#2
20 11111000000000011111 11111000000000011111
输出#2
0
输入#3
6 111100 111000
输出#3
-1
输入#4
119 10101111011101001011111000111111101011110011010111111111111111010111111111111110111111110111110111101111111111110111011 11111111111111111111111111011111101011111011110111110010100101001110111011110111111111110010011111101111111101110111011
输出#4
22
说明/提示
限制条件
- 2≤N≤500000
- S 是由
0和1组成的长度为 N 的字符串 - T 是由
0和1组成的长度为 N 的字符串
样例解释 1
例如,可以如下进行操作,在 2 次操作后将显示屏上的字符串变为 1010111。
- 选择 (l,r)=(2,4) 进行操作。此时,显示屏上的字符串由
1110110变为1011110。 - 选择 (l,r)=(4,7) 进行操作。此时,显示屏上的字符串由
1011110变为1010111。
样例解释 2
在进行任何操作之前,显示屏上的字符串已经是 T,因此答案为 0。
样例解释 3
无论如何操作,都无法将显示屏上的字符串变为 T,此时请输出 −1。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?