天天育儿网,内容丰富有趣,生活中的好帮手!
天天育儿网 > 逐梦....圈圈圈圈圈

逐梦....圈圈圈圈圈

时间:2022-10-02 05:52:13

相关推荐

逐梦....圈圈圈圈圈

链接:/acm/problem/21485

来源:牛客网

题目描述

benTuTuT和jingzhiwang沿着好心同学的指路终于来到1002的ACM集训队,开始了一天的逐(刷)梦(题)之旅,他们遇到了一道非常有趣的题:

26个大写字母里面,有一部分字母是带有圈的,比如A有1个圈,B有2个圈,C没有圈,

给你一个带有n个大写字母组成的字符串,请问一共有多少个圈圈。

你可以将字母中完全封闭的一个区域当作一个圈

输入描述:

第一行输入一个整数t,代表有t组测试数据,

对于每组测试数据,

第一行输入一个整数n代表字符串的长度,

第二行输入一个长度为n的字符串S,保证只由大写字母组成。

1<=t<=10

1<=n<=1*10^5

输出描述:

对于每组测试数据,输出一个整数代表这个字符串共有多少个圈圈。

并且对于每组数据,答案占单独的一行。

示例1

输入

复制

2

8

HELLOACM

16

XINSHENGSAIJIAYOU

输出

复制

2

3

这道题目,getchar在dev可以正常得到结果,但是牛客上就一直出结果0,查了半天没搞懂,求大佬教。

AC代码:

#include<iostream>#include<string>using namespace std;int main(){ios::sync_with_stdio(0);int T;cin>>T;while(T--){int N;cin>>N;char tem;int sum=0;while(N--){cin>>tem;if(tem=='A'||tem=='D'||tem=='O'||tem=='P'||tem=='Q'||tem=='R')sum++;else if(tem=='B') sum+=2;}cout<<sum<<endl;//getchar();}return 0;}

dev可以得到正确结果但是牛客结果是0的代码:

#include<iostream>#include<string>using namespace std;int main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);int T;cin>>T;while(T--){int N;cin>>N;char tem;int sum=0;while(N--){tem=getchar();if(tem=='A'||tem=='D'||tem=='O'||tem=='P'||tem=='Q'||tem=='R')sum++;else if(tem=='B') sum+=2;}cout<<sum<<endl;getchar();}return 0;}

如果觉得《逐梦....圈圈圈圈圈》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。