好串_via牛客网
题目
链接:https://ac.nowcoder.com/acm/contest/28537/C
来源:牛客网时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32768K,其他语言65536K
64bit IO Format: %lld题目描述
牛牛喜欢跟字符串玩耍,他刚刚学会了一个新操作,将一个字符串x插入另一个字符串y中(包括放在开头和结尾)
牛牛认为如果一个串是好的当这个串能按照如下方法被构造出来:
一开始,有一个空串,然后执行0次或者若干次操作,每次操作将ab插入当前的字符串根据上面的定义,ab, aabb, aababb都是好串,aab,ba,abbb并不是好串
现在给你一个字符串s,判断s是否是好串
输入描述:
输入一行包含一个字符串,长度不超过50
输出描述:
输出"Good" 或者 "Bad"
示例1
输入
ab
输出
Good
示例2
输入
aab
输出
Bad
示例3
输入
abaababababbaabbaaaabaababaabbabaaabbbbbbbb
输出
Bad
备注:
子任务1:n <= 10
子任务2:n <= 20
子任务3:无限制
题解
这道题目可以转化为括号匹配类型的题目
在括号匹配类型的题目中,对所有左括号进行入栈,如果遇到右括号,(1.栈不为空 2.该右括号与栈顶的左括号匹配)则出栈,否则就不匹配.
最后再看栈是不是为空,如果为空,那么就是正确的
在这里由于都是一种括号,所以没有必要使用栈,所以在这里我使用了cnt
计数的方法.
代码
#include <cstring>
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
int cnt = 0;
char s[60] = { 0 };
cin >> s;
int lenth = strlen(s);
for (int i = 0; i < lenth; i++)
{
if (s[i] == 'a')
cnt++;
else if(s[i] == 'b')
{
cnt--;
}
if (cnt < 0)
{
cout << "Bad";
return 0;
}
}
if (cnt != 0)
cout << "Bad";
else
cout << "Good";
return 0;
}
好串_via牛客网的更多相关文章
- 原串反转 牛客网 程序员面试金典 C++ Python
原串反转 牛客网 程序员面试金典 C++ Python 题目描述 请实现一个算法,在不使用额外数据结构和储存空间的情况下,翻转一个给定的字符串(可以使用单个过程变量). 给定一个string iniS ...
- 小A的柱状图_via牛客网
题目 链接:https://ac.nowcoder.com/acm/contest/28537/Q 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语 ...
- 简单的数据结构_via牛客网
题面 链接:https://ac.nowcoder.com/acm/contest/28537/K 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他语 ...
- 小C的记事本_via牛客网
题目 链接:https://ac.nowcoder.com/acm/contest/28537/G 来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 131072K,其他语 ...
- 牛牛与后缀表达式_via牛客网
题目 链接:https://ac.nowcoder.com/acm/contest/28537/B 来源:牛客网 时间限制:C/C++ 3秒,其他语言6秒 空间限制:C/C++ 262144K,其他语 ...
- 吐泡泡_via牛客网
题目 链接:https://ac.nowcoder.com/acm/contest/28537/E 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言 ...
- 栈和排序_via牛客网
题目 链接:https://ac.nowcoder.com/acm/contest/26886/A 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他语 ...
- 确定两串乱序同构 牛客网 程序员面试金典 C++ Python
确定两串乱序同构 牛客网 程序员面试金典 C++ Python 题目描述 给定两个字符串,请编写程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串.这里规定大小写为不同字符,且考虑字符串中 ...
- 牛客网《BAT面试算法精品课》学习笔记
目录 牛客网<BAT面试算法精品课>学习笔记 牛客网<BAT面试算法精品课>笔记一:排序 牛客网<BAT面试算法精品课>笔记二:字符串 牛客网<BAT面试算法 ...
随机推荐
- 详解:什么是VXLAN?
点击上方"开源Linux",选择"设为星标"回复"学习"获取独家整理的学习资料! 本文介绍了什么是VXLAN,以及VXLAN的基本概念和工作 ...
- iptables系列教程(三)| iptables 实战篇
一个执着于技术的公众号 实战1 服务器禁止ping iptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP // 禁止任何人ping通本机 &qu ...
- 【mq】从零开始实现 mq-05-实现优雅停机
前景回顾 [mq]从零开始实现 mq-01-生产者.消费者启动 [mq]从零开始实现 mq-02-如何实现生产者调用消费者? [mq]从零开始实现 mq-03-引入 broker 中间人 [mq]从零 ...
- 【Electron】使用 build-tools 在 Windows 中编译 electron
[Electron]使用 build-tools 在 Windows 中编译 electron 提前准备 预留好磁盘空间 Git 缓存目录:%UserProfile%/.git_cache ,大概有 ...
- Git使fork项目与源项目保持一致
操作如下: 1.先clone自己的fork项目到本地工程目录 git clone git@gitlab.alibaba-inc.com:riqi/{project}.git 2.进入该项目目录 ...
- mybatis plus 的 ActiveRecord 模式
实体类继承 Model public class Test extends Model<Test> implements Serializable {} 就可以 new Test().in ...
- MySQL启动与多实例安装
启动方式及故障排查 一.几个问题 1.1 /etc/init.d/mysql 从哪来 cp /usr/local/mysql/support-files/mysql.server /etc/init. ...
- Hapoop安装学习(第一天)
学习任务: 1.安装虚拟机 Linux使用版本为Centos7,共安装3台虚拟机,一台主机和两台从机.主机命名为master,两台从机分别命名为s1和s2. master分配磁盘空间30G,s1和s2 ...
- 前端5jQuery
内容概要 jQuery简介 查找标签 jQuery操作标签 jQuery事件操作 jQuery动画效果(了解) 前端第三方框架(基础) 内容详情 jQuery简介
- 【转载】浅谈大规模k8s集群关于events的那些坑
原文链接:一流铲屎官二流程序员[浅谈大规模k8s集群关于events的那些坑] 背景 随着k8s集群规模的增加,集群内的object数量也与日俱增,那么events的数量也会伴随其大量增加,那么当用户 ...