#include<stdio.h>

#include<string.h>


int main() {

    char a[100001];  // 多留1位避免边界问题

    scanf("%s", a);

    int len = strlen(a);

    int count = 0;   // 统计能切割出的单词数量

    int i = 0;       


    while (i <= len - 3) {  // 保证i+2不越界

        // 提取当前位置开始的3个字符

        char c1 = a[i];

        char c2 = a[i+1];

        char c3 = a[i+2];

        

        // 检查这3个字符是否恰好是l、q、b各一个(任意顺序)

        // 思路:统计l/q/b的出现次数,每个都恰好出现1次

        int has_l = 0, has_q = 0, has_b = 0;

        if (c1 == 'l') has_l++;

        else if (c1 == 'q') has_q++;

        else if (c1 == 'b') has_b++;

        

        if (c2 == 'l') has_l++;

        else if (c2 == 'q') has_q++;

        else if (c2 == 'b') has_b++;

        

        if (c3 == 'l') has_l++;

        else if (c3 == 'q') has_q++;

        else if (c3 == 'b') has_b++;

        

        // 如果三个字符恰好是l、q、b各一个

        if (has_l == 1 && has_q == 1 && has_b == 1) {

            count++;       // 计数+1

            i += 3;        // 跳过这3个字符(模拟切割)

        } else {

            i++;           // 不满足则只移动1位

        }

    }


    printf("%d\n", count);

    return 0;

}


点赞(0)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论