Harbour.Space Scholarship Contest 2021-2022 (open for everyone, rated, Div. 1 + Div. 2) D题解
Posted 筱翼深凉
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Harbour.Space Scholarship Contest 2021-2022 (open for everyone, rated, Div. 1 + Div. 2) D题解相关的知识,希望对你有一定的参考价值。
传送门
题意
给定两个字符串\\(a\\)和\\(b\\),要求依次输入\\(a\\)中的字符,并进行以下两种操作:
- 输入当前字符
- 不输入当前字符,并删除前一个字符
使得最终输入的字符和\\(b\\)字符相等。
思路
由于当前的字符不被删除就一定会被选上,因此考虑从后往前遍历\\(a\\)字符,如果与\\(b\\)字符相等就选上,否则删除。
代码
int n;
string a, b;
int main()
{
int T;
cin >> T;
while (T -- )
{
cin >> a >> b;
if (a.size() < b.size()) puts("NO");
else
{
int i, j;
for (i = a.size() - 1, j = b.size() - 1; i >= 0 && j >= 0; i -- )
{
if (a[i] == b[j]) j -- ;
else i -- ;
}
if (j >= 0) puts("NO");
else puts("YES");
}
}
return 0;
}
以上是关于Harbour.Space Scholarship Contest 2021-2022 (open for everyone, rated, Div. 1 + Div. 2) D题解的主要内容,如果未能解决你的问题,请参考以下文章
Harbour.Space Scholarship Contest 2021-2022 (open for everyone, rated, Div. 1 + Div. 2) D题解
Harbour.Space Scholarship Contest 2021-2022 (open for everyone, rated, Div. 1 + Div. 2)(补题)