[CodeForce 801A] Vicious Keyboard

题目链接:http://codeforces.com/problemset/problem/801/A

思路:题目中字符串的长度最长100个字符,所以,可以考虑用暴力,先遍历一遍匹配“VK”的,并把符合条件的标记成其他的字符(如'$'),然后再遍历一遍,只要找到符合"VV"或者"KK"的,就把答案加1,然后跳出循环,然后输出答案即可。

AC代码:

#include<cstdio>
#include<cstring>

using namespace std;

int main() {
    char arr[102];
    int cnt;
    while (scanf("%s", arr) != EOF) {
        cnt = 0;
        for (int i = 1; i < strlen(arr); i++) {
            if (arr[i - 1] == 'V' && arr[i] == 'K') {
                cnt++;
                arr[i - 1] = arr[i] = '$';
            }
        }
        for (int i = 0; i < strlen(arr) - 1; i++) {
            if (arr[i] == arr[i + 1] && (arr[i] == 'V' || arr[i] == 'K')) {
                cnt++;
                break;
            }
        }
        printf("%d
", cnt);
        memset(arr, 0, strlen(arr));
    }
    return 0;
}
原文地址:https://www.cnblogs.com/youpeng/p/10643287.html