洛谷P1321题题解(Java语言描述)

题目要求

P1321题目链接
在这里插入图片描述

分析

拿boy举例

因为是覆盖的,所以如果是 b 就一定有一个boy

如果是 o ,就要分两种情况:

1:前面是 b ,那就是同一个单词
2:前面不是 b ,那就是被覆盖的单词, 是另一个单词,即另一个boy

y 同理,如果前面是 o ,那就是同一个单词,若果不是 o ,就是另一个单词

girl也是一样

AC代码(Java语言描述)

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String str = scanner.nextLine();
        char[] chars = str.toCharArray();
        int boyCount = 0, girlCount = 0;
        for(int i = 0; i < str.length(); i++){
            if(chars[i] == 'b') {
                boyCount++;
            } else if(chars[i] == 'o' && chars[i-1] != 'b') {
                boyCount++;
            } else if(chars[i] == 'y' && chars[i-1] != 'o') {
                boyCount++;
            } else if(chars[i] == 'g'){
                girlCount++;
            } else if(chars[i] == 'i' && chars[i-1] != 'g'){
                girlCount++;
            } else if(chars[i] == 'r' && chars[i-1] != 'i') {
                girlCount++;
            } else if(chars[i] == 'l' && chars[i-1] != 'r') {
                girlCount++;
            }
        }
        System.out.println(boyCount);
        System.out.println(girlCount);
        scanner.close();
    }
}
发布了351 篇原创文章 · 获赞 610 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/weixin_43896318/article/details/103697956
今日推荐