魔法球
暂无测试数据。
Description
有 \(n\) 个小球排成一行,每个小球是红色或者蓝色。开始你被给定了两个非负整数 \(R\) 和 \(B\)。
每次你可以施展一个魔法,每次魔法你可以选择任意不同的 \(R+B\) 个球,将这些球全部变成白色,但是需要满足下列条件:
1. 你选择的 \(R+B\) 个球中,需要有恰好 \(R\) 个红球和恰好 \(B\) 个蓝球。
1. 你选择的 \(R+B\) 个球中,最左端的球和最右端的球之间,不能有之前已经变成白色的球。
问是否能用若干次魔法将所有球都变成白色,若可以请输出操作次数最少且的方案。
Input
第一行三个整数 \(n,R,B\),含义见题目描述。
第二行一个长度为 \(n\) 的只含 R
或 B
的字符串,第 \(i\) 个字符表示第 \(i\) 个球的颜色,R
表示红色,B
表示蓝色。
Output
如果存在合法方案,你需要在第一行输出一个 YES
,在第二行输出一个整数 \(S\) 表示使用魔法的次数。
接下来 \(S\) 行,每行 \(R+B\) 个整数,表示每一次魔法选中的球的编号。
请注意,每一行内的编号按照由小到大升序排列。
如果不存在合法方案,你只要输出一行 NO
即可。
Sample
Sample Input
#1
6 1 1
RBBRRB
#2
8 1 2
BRBRBRBR
Sample Output
#1
YES
3
1 6
2 5
3 4
#2
NO
Hint
对于 \(10\%\) 的数据,满足 \(R=0\);
对于另外 \(15\%\) 的数据,满足 \(R=B=1\);
对于 \(40\%\) 的数据,满足 \(n\le 10\);
对于 \(60%\) 的数据,满足 \(n\le 200\);
对于 \(75\%\) 的数据,满足 \(n\le 2000\);
对于 \(100\%\) 的数据,\(R,B\ge 0,1\le R+B\le n\le 10^5\)。
信息
- ID
- 1014
- 难度
- (无)
- 分类
- (无)
- 标签
- (无)
- 递交数
- 0
- 已通过
- 0
- 通过率
- ?
- 上传者