AT_apc001_g.Colorful Doors
NOI/NOI+/CTSC
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
有一座连接左岸和右岸的桥。桥上的 2N 个不同的位置分别放置着一种颜色的门。每个门的颜色用 1 到 N 之间的整数表示。对于每一个 k(1≤k≤N),颜色为 k 的门恰好有两个。
すぬけ君打算从左岸走到右岸。他总是向右行走,在行走过程中会发生如下现象:
- 当すぬけ君触碰到颜色为 k(1≤k≤N)的门时,他会立即传送到另一扇颜色为 k 的门的右边(即紧挨着那扇门的右侧)。
可以证明,すぬけ君最终一定可以到达右岸。
对于每一个 i(1≤i≤2N−1),我们把从左起第 i 个门和第 i+1 个门之间的区间称作区间 i。すぬけ君渡桥结束后,他对每个 i(1≤i≤2N−1)记录了自己是否经过了区间 i。这个记录以长度为 2N−1 的字符串 s 形式给出。对于每一个 i(1≤i≤2N−1),如果すぬけ君走过了区间 i,则 s 的第 i 位为 1,否则为 0。
图:对应于输入样例 3 的门的分布示意图
请判断是否存在一种与记录不矛盾的门的分布,如果存在,请给出一种分布方案。
输入格式
输入从标准输入中读入,格式如下:
N s
输出格式
如果不存在与记录不矛盾的门的分布,输出 No。如果存在,输出 Yes,然后在第二行输出一种门的分布。对于每个 i(1≤i≤2N),ci 表示从左到右第 i 个门的颜色。
c1 c2 … c2N
输入输出样例
输入#1
2 010
输出#1
Yes 1 1 2 2
输入#2
2 001
输出#2
No
输入#3
3 10110
输出#3
Yes 1 3 2 1 2 3
输入#4
3 10101
输出#4
No
输入#5
6 00111011100
输出#5
Yes 1 6 1 2 3 4 4 2 3 5 6 5
说明/提示
限制条件
- 1≤N≤105
- ∣s∣=2N−1
- s 只包含字符
0和1
样例解释 3
以下的图与题目正文中一致。
由 ChatGPT 5 翻译
输入解题思路,AI测评打分。不知道怎么写?