#5946. 字符串
字符串
题目描述
给定一个长度为 的字符串 ,仅由 .、o 和 ? 组成。将所有 ? 分别替换为 . 或 o 后得到的字符串中,满足以下所有条件的字符串集合记为 :
o的个数恰好为 个;o不连续出现。
保证 不是空集。
请输出一个长度为 的字符串 ,其中 表示 的第 个字符,规则如下:
- 若 中所有字符串的第 个字符都是
.,则 ; - 若 中所有字符串的第 个字符都是
o,则 ; - 若 中既存在第 个字符为
.的字符串,也存在第 个字符为o的字符串,则 。
输入格式
第一行包含两个整数 和 。
第二行包含一个长度为 的字符串 ,仅含 .、o 和 ?。
输出格式
输出一行,为构造出的字符串 。
样例
4 2
o???
o.??
5 2
?????
?????
7 3
.o???o.
.o.o.o.
样例解释
- 样例 1: 包含
o.o.和o..o。第 1 位在所有串中都是o,故 ;第 2 位在所有串中都是.,故 ;第 3 位既有.也有o,故 ;第 4 位同理为?。结果为o.??。 - 样例 2:可能的方案太多,每一位都既有
.也有o,故全为?。 - 样例 3:唯一合法的方案是
o放置在位置 2、4、6,其余为.,即o.o.o.,因此 与原串确定位置一致。
数据范围与提示
- 仅由
.、o和?组成,长度为 - 非空,保证至少存在一种合法的替换方案
- 所有输入均为整数
相关
在下列比赛中: