博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
九度oj 1006 ZOJ问题 2010年浙江大学计算机及软件工程研究生机试真题
阅读量:5278 次
发布时间:2019-06-14

本文共 1069 字,大约阅读时间需要 3 分钟。

题目1006:ZOJ问题

时间限制:1 秒

内存限制:32 兆

特殊判题:

提交:16244

解决:2742

题目描述:
对给定的字符串(只包含'z','o','j'三种字符),判断他是否能AC。
是否AC的规则如下: 1. zoj能AC; 2. 若字符串形式为xzojx,则也能AC,其中x可以是N个'o' 或者为空; 3. 若azbjc 能AC,则azbojac也能AC,其中a,b,c为N个'o'或者为空;
输入:
输入包含多组测试用例,每行有一个只包含'z','o','j'三种字符的字符串,字符串长度小于等于1000。
输出:
对于给定的字符串,如果能AC则请输出字符串“Accepted”,否则请输出“Wrong Answer”。
样例输入:
zojozojoozoojoooozoojoooozoojozojooooozojozojoooo
样例输出:
AcceptedAcceptedAcceptedAcceptedAcceptedAcceptedWrong AnswerWrong Answer
来源:

分析:

2种情况输出"Accepted":

1."zoj"

2."xzo..ojx..x"(其中中间o的个数=末尾x的个数)

技巧:找到第一个'z'的位置和第一个'j'的位置,就可以就可以算出第一个'z'和第一个'j'之间的'o'的个数(就是末尾x的个数)

然后构造string s1="xzo..ojx..x"与原字符串比较

 

substr用法:s.substr(a,b)  返回s[a]开始的(包括s[a])长b的字符串

1 #include 
2 #include
3 #include
4 #include
5 #include
6 #include
7 using namespace std; 8 int main() 9 {10 string s;11 while(cin>>s){12 string x;13 if(s=="zoj"){14 cout<<"Accepted"<
0){31 x=s.substr(0,tz);32 /*for(i=0;i

 

转载于:https://www.cnblogs.com/Deribs4/p/4291299.html

你可能感兴趣的文章
Parrot虚拟机
查看>>
Teamcenter10 step-by-step installation in Linux env-Oracle Server Patch
查看>>
Struts2学习(三)
查看>>
Callable和Runnable和FutureTask
查看>>
GitHub 多人协作开发 三种方式:
查看>>
文本域添加编辑器
查看>>
Yum安装MySQL以及相关目录路径和修改目录
查看>>
java获取hostIp和hostName
查看>>
关于web服务器和数据库的各种说法(搜集到的)
查看>>
《TCP/IP 详解 卷一》读书笔记 -----第四章 ARP
查看>>
C# Stream 和 byte[] 之间的转换
查看>>
OMG: daily scrum nine
查看>>
redis与spring结合错误情况
查看>>
第六章 字节码执行方式--解释执行和JIT
查看>>
字符串方法title()、istitle()
查看>>
yield语句
查看>>
查看linux系统中占用cpu最高的语句
查看>>
[洛谷P1738]洛谷的文件夹
查看>>
ubuntu server设置时区和更新时间
查看>>
【京东咚咚架构演进】-- 好文收藏
查看>>