题目链接:AT4230 [ABC104B] AcCepted

一道非常简单的模拟题,直接根据题意做就行了。

判断条件:

  1. $ s $ 的第一个字符是 A
  2. 在 $ s $ 的第三个字符和倒数第二个字符之间有且只有一个字符 C
  3. 除去上述提到的 AC 以外的所有字符都必须是小写。

Code:

#include <iostream>
#include <cstring>

#define first 0
#define RET return 0
#define WA std::cout << "WA"
#define AC std::cout << "AC"

int main()
{
    std::string s, ss; // ss: String For Search 用于查找的字符串
    std::cin >> s;
    ss = s.substr(2, s.length() - 3);
    if (s[first] != 'A') { WA; RET; } // 不符合第 1 条判断条件
    if (ss.find('C') == ss.npos) { WA; RET; }
    if (ss.find('C') != ss.rfind('C'))
    {
        WA; RET;
    } // 不符合第 2 条判断条件
    for (int i = 0; i < s.length(); i++)
    {
        if (s[i] != 'A' && s[i] != 'C')
        {
            if (s[i] > 'A' && s[i] <= 'Z')
            {
                WA; RET; // 不符合第 3 条判断条件
            }
        }
    }
    AC; return 0; // 完结撒花!
}

Accepted 提交记录

最后修改:2022 年 02 月 02 日
赠人玫瑰,手有余香。您的赞赏是对我最大的支持!