Logo __vector__ 的博客

博客

How to AK ARC145

...
__vector__
2025-12-01 12:55:48

本文章由 WyOJ Shojo 从洛谷专栏拉取,原发布时间为 2022-07-30 22:19:35

题外话

历经 6 次罚时切掉 A 后,通过翻 OEIS.org 过 C(我很不要脸,对吧)。
反正小号是上棕了(76 --> 440)

A

做法

结论题。
考虑让右边试图匹配左边,根据题目条件,可以推出,对于所有不符合条件的位置,都可以通过牺牲后一个位置来把当前位置变得合格。

但是,最后一个位置没有位置可以替它牺牲,所以如果最后一个位置不符合条件,那么无解,No,反之,Yes

左边匹配右边和右边匹配左边都一样,所以选择较为方便的右边匹配左边。

Code

#include <bits\/stdc++.h>
using namespace std;
namespace Main
{
    const int maxn=2e5+5;
    int n;
    char s[maxn];
    void main()
    {
        scanf("%d",&n);
        scanf("%s",s+1);
        if(n==2)
        {
            if(s[1]!=s[2])printf("No");
            else printf("Yes");
            return;
        }
        if((s[n]=='B'&&s[1]=='A'))printf("No");
        else printf("Yes");
    }
}
int main()
{
    Main::main();
    return 0;
}

B

做法

正在想

Code

没写

C

公式是从 oeis.org 上贺的,我还没学证明

评论

暂无评论

发表评论

可以用@mike来提到mike这个用户,mike会被高亮显示。如果你真的想打“@”这个字符,请用“@@”。