AT4230 [ABC104B] AcCepted 题解

2022-09-09 12:02:29 浏览数 (1)

题目链接:AT4230 [ABC104B] AcCepted

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

判断条件:

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

Code:

代码语言:javascript复制
#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 提交记录

ode

0 人点赞