結果

問題 No.380 悪の台本
ユーザー vjudge1
提出日時 2025-04-26 19:17:55
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 2,103 bytes
コンパイル時間 2,093 ms
コンパイル使用メモリ 199,008 KB
実行使用メモリ 7,844 KB
最終ジャッジ日時 2025-04-26 19:17:58
合計ジャッジ時間 2,894 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 4 WA * 4
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <bits/stdc++.h>
#include <cctype>
#define int long long
#define WORONG                \
    cout << "WRONG!" << endl; \
    return;
#define CORRECT                        \
    cout << "CORRECT (maybe)" << endl; \
    return;
const int N = 1e5 + 5;
const int Mod = 1e9 + 7;
using namespace std;
string S;
void solve()
{
    string name = "";
    int i = 0;
    while (i < S.size() && S[i] != ' ')
    {
        name += S[i];
        i++;
    }
    if (i + 1 >= S.size())
    {
        WORONG
    }
    S = S.substr(i + 1);
    if (S.empty())
    {
        WORONG
    }
    if (name == "rabi")
    {
        for (char i : S)
        {
            if (!isalnum(i))
            {
                CORRECT
            }
        }
        WORONG
    }
    i = S.size() - 1;
    while (i >= 0 && !isalnum(S[i]))
    {
        if (S.size() - i > 3)
        {
            WORONG
        }
        i--;
    }
    cerr << S << endl;
    S = S.substr(0, i + 1);
    cerr << S << endl;
    if (name == "digi" || name == "petit" || name == "piyo")
    {
        if (S.size() < 3)
        {
            WORONG
        }
        string tmp;
        for (int i = S.size() - 3; i < S.size(); i++)
        {
            tmp += tolower(S[i]);
        }
        if (name == "digi" && tmp == "nyo")
        {
            CORRECT
        }
        if (name == "petit" && tmp == "nyu")
        {
            CORRECT
        }
        if (name == "piyo" && tmp == "pyo")
        {
            CORRECT
        }
    }
    if (name == "gema")
    {
        if (S.size() < 4)
        {
            cout << "WRONG!" << endl;
            return;
        }
        string tmp;
        for (int i = S.size() - 4; i < S.size(); i++)
        {
            tmp += tolower(S[i]);
        }
        if (tmp == "gema")
        {
            CORRECT
        }
    }
    WORONG
}
signed main()
{
    // freopen("dialogue.in", "r", stdin);
    // freopen("dialogue.out", "w", stdout);
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    cout.tie(nullptr);
    while (getline(cin, S))
    {
        solve();
    }
    return 0;
}
0