CF1999D.Slavic's Exam

普及-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Slavic 有一场非常艰难的考试,需要你的帮助才能通过。以下是他正在苦苦挣扎的问题:

存在一个字符串 ss,它由小写英文字母和可能为零个或多个 "?" 组成。

Slavic 被要求将每个 "?" 替换为一个小写英文字母,使得字符串 tt 成为字符串 ss 的一个子序列(不一定连续)。

请输出任意一个满足条件的字符串,或者如果不存在满足条件的字符串,则输出不可能。

输入格式

第一行包含一个整数 TT(1≤T≤1041 \leq T \leq 10^4)——表示测试用例的数量。

每个测试用例的第一行包含一个字符串 ss(1≤∣s∣≤2⋅1051 \leq |s| \leq 2 \cdot 10^5,且 ss 仅由小写英文字母和 "?" 组成)——你拥有的原始字符串。

每个测试用例的第二行包含一个字符串 tt(1≤∣t∣≤∣s∣1 \leq |t| \leq |s|,且 tt 仅由小写英文字母组成)——应当成为字符串 ss 的子序列的字符串。

所有测试用例中 ∣s∣|s| 的总和不超过 2⋅1052 \cdot 10^5,其中 ∣x∣|x| 表示字符串 xx 的长度。

输出格式

对于每个测试用例,如果不存在满足条件的字符串,输出 "NO"(不带引号)。

否则,输出 "YES"(不带引号)。然后输出一行——满足所有条件的字符串。

你可以以任意大小写输出 "YES" 和 "NO"(例如,"yEs"、"yes" 和 "Yes" 都会被识别为肯定回答)。

如果存在多种答案,你可以输出其中任意一种。

输入输出样例

  • 输入#1

    5
    ?????
    xbx
    ab??e
    abcde
    ayy?x
    a
    ab??e
    dac
    paiu
    mom

    输出#1

    YES
    xabax
    YES
    abcde
    YES
    ayyyx
    NO
    NO

说明/提示

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页