| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 56 人关注过本帖
标题:whywhy 为什么这个代码运行错误TAT
只看楼主 加入收藏
bug芒果核
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2025-9-12
结帖率:100%
收藏
 问题点数:20 回复次数:2 
whywhy 为什么这个代码运行错误TAT

大牛帮帮
#include<bits/stdc++.h>
using namespace std;
int main(){
    int boy=0,girl=0;
    string l;
    scanf("%s",&l);
    for(int i=0;i<l.size();i++){
        if(l[i]=='b'||l[i+1]=='o'||l[i+2]=='y') boy++;
        if(l[i]=='g'||l[i+1]=='i'||l[i+2]=='r'||l[i+3]=='l') girl++;        
    }
    printf("%d\n%d",boy,girl);
    return 0;
}
题目描述
我有一个长度为 l 的字符串,最开始时,这个字符串由 l 个句号(.)组成。
我在这个字符串中,将多次把 boy 或者 girl 两单词,依次贴到这个字符串中。
后贴上单词,会覆盖之前贴上的单词,或者覆盖句号。最终,每个单词至少有一个字符没有被覆盖。
请问,一共贴有几个 boy 几个 girl?
输入格式
一行被反复贴有 boy 和 girl 两单词的字符串。
输出格式
两行,两个整数。第一行为 boy 的个数,第二行为 girl 的个数。
输入输出样例
输入
......boyogirlyy......girl.......
输出
4
2
说明/提示
数据保证,3≤l≤255,字符串仅仅包含如下字符:.bgilory。
搜索更多相关主题的帖子: int 字符串 单词 代码 || 
昨天 15:32
yiyanxiyin
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:9
帖 子:295
专家分:2174
注 册:2023-6-29
收藏
得分:0 
程序代码:
#include<bits/stdc++.h>
using namespace std;
int main(){
    int boy=0,girl=0;
    string l;
    cin >> l;
    for(int i=0;i<l.length();i++){
        if(l[i]=='b'||l[i]=='o'||l[i]=='y') boy++;
        if(l[i]=='g'||l[i]=='i'||l[i]=='r'||l[i]=='l') girl++;   
        if(i>0){
             if(l[i]=='y' && l[i-1] =='o') boy --;
             if(l[i]=='o' && l[i-1] =='b') boy --;
             if(l[i]=='l' && l[i-1] =='r') girl --;
             if(l[i]=='r' && l[i-1] =='i') girl --;
             if(l[i]=='i' && l[i-1] =='g') girl --;
        }
    }
    printf("%d\n%d",boy,girl);
    return 0;
}
昨天 16:37
bug芒果核
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2025-9-12
收藏
得分:0 
回复 2楼 yiyanxiyin
虽然没懂为什么我错了,还是感谢解答
昨晚 19:07
快速回复:whywhy 为什么这个代码运行错误TAT
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022020 second(s), 8 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved