| 比赛 | 
    202103省实验桐柏一中普及组联赛 | 
    评测结果 | 
    EEEEEEEEEE | 
    | 题目名称 | 
    兵马未动,粮草先行 | 
    最终得分 | 
    0 | 
    | 用户昵称 | 
    fsdh | 
    运行时间 | 
    0.962 s  | 
    | 代码语言 | 
    C++ | 
    内存使用 | 
    3.47 MiB  | 
    | 提交时间 | 
    2021-03-22 19:45:09 | 
显示代码纯文本
#include <bits/stdc++.h>
using namespace std;
const int MAXN = 2e5 + 8;
char s[MAXN], ch, l = 0, ans = 0;
int ok (int x) {
    if (s[x] == 'h' && s[x + 1] == 'o' && s[x + 2] == 'r' && s[x + 3] == 's' && s[x + 4] == 'e' && s[x + 5] == 's') {
        return 2;
    }
    else if (s[x] == 'h' && s[x + 1] == 'o' && s[x + 2] == 'r' && s[x + 3] == 's' && s[x + 4] == 'e') {
        return 1;
    }
    return 0;
}
int main () {
    freopen ("horsesnum.in", "r", stdin);
    freopen ("horsesnum.out", "w", stdout);
    ch = getchar ();
    while (ch != '\n') {
        if ((ch >= 'A' && ch <= 'Z')) {
            s[++l] = char (ch + 32);
        }
        else {
            if ((ch >= 'a' && ch <= 'z')) s[++l] = ch;
        }
        ch = getchar ();
    }
    for (int q = 1; q <= l ;++q) {
        if (s[q] == 'h') {
            ans += ok (q);
        }
    }
    printf ("%d\n", ans);
    return 0;
}