题目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”。
样例输入:
zoj
ozojo
ozoojoo
oozoojoooo
zooj
ozojo
oooozojo
zojoooo
样例输出:
Accepted
Accepted
Accepted
Accepted
Accepted
Accepted
Wrong Answer
Wrong Answer
来源:
2010年浙江大学计算机及软件工程研究生机试真题

分析:

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的字符串

http://baike.baidu.com/link?url=sNCZ2LsYgl82zQXh6xKA51dUV_sZRVh9tvrwDBMpqkzJ8IP6rv5JwVy8NNdY_5qZcRVOCQ3Z6GH8ZYNI7E5ctNnBkd_ZURxza5tLXzq9l8O

 1 #include <cstdio>
 2 #include<algorithm>
 3 #include<iostream>
 4 #include<string>
 5 #include<cstring>
 6 #include<vector>
 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"<<endl;
15             continue;
16         }
17         int i=0;
18         int tz=-1,tj=-1;
19         for(;i<s.length();i++){
20             if(s[i]=='z'&&tz==-1){
21                 tz=i;
22             }
23             else{
24                 if(s[i]=='j'&&tj==-1){
25                     tj=i;
26                 }
27             }
28         }
29         int num=tj-tz-1;
30         if(num>0){
31             x=s.substr(0,tz);
32             /*for(i=0;i<tz;i++){
33                 if(s[i]!='o')
34                 break;
35             }
36             if(i!=tz){
37                 cout<<"Wrong Answer"<<endl;
38                 continue;
39             }
40             for(i=tz+1;i<tj;i++){
41                 if(s[i]!='o')
42                 break;
43             }
44             if(i!=tj){
45                 cout<<"Wrong Answer"<<endl;
46                 continue;
47             }*/
48             string s1=x+'z';
49             for(i=0;i<num;i++){
50                 s1+='o';
51             }
52             s1+='j';
53             for(i=0;i<num;i++){
54                 s1+=x;
55             }
56             if(s1==s){
57                 cout<<"Accepted"<<endl;
58                 continue;
59             }
60         }
61         cout<<"Wrong Answer"<<endl;
62     }
63     return 0;
64 }

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

九度oj 1006 ZOJ问题 2010年浙江大学计算机及软件工程研究生机试真题相关推荐

  1. 2010年浙江大学计算机及软件工程研究生机试真题

    http://ac.jobdu.com/problem.php?pid=1006 ZOJ问题 /* 若azbjc 能AC,则azbojac也能AC,其中a,b,c为N个'o'或者为空: 这里azboj ...

  2. 2010年清华大学计算机研究生机试真题

    http://ac.jobdu.com/problem.php?pid=1085  求root(N, k) /* N =a0+a1*k+a2*k^2+......ar*k^r; N'=a0+a1 +a ...

  3. 2010年北京大学计算机研究生机试真题

    http://ac.jobdu.com/problem.php?pid=1149   子串计算 #include<iostream> #include<cstdio> #inc ...

  4. [高精度整数] a+b [2010年华中科技大学计算机研究生机试真题]

    题目描述: 实现一个加法器,使其能够输出a+b的值. 输入描述: 输入包括两个数a和b,其中a和b的位数不超过1000位. 输出描述: 可能有多组测试数据,对于每组数据, 输出a+b的值. 样例输入: ...

  5. 九度OJ 1008:最短路径问题 (最短路)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:8064 解决:2685 题目描述: 给你n个点,m条无向边,每条边都有长度d和花费p,给你起点s终点t,要求输出起点到终点的最短距离及其花费 ...

  6. 九度OJ 1024 畅通工程 -- 并查集、贪心算法(最小生成树)

    题目地址:http://ac.jobdu.com/problem.php?pid=1024 题目描述: 省政府"畅通工程"的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有 ...

  7. 九度OJ 1011:最大连续子序列 (DP)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:5615 解决:2668 题目描述: 给定K个整数的序列{ N1, N2, ..., NK },其任意连续子序列可表示为{ Ni, Ni+1, ...

  8. 九度OJ—题目1032:ZOJ

    题目描写叙述: 读入一个字符串.字符串中包括ZOJ三个字符,个数不一定相等,按ZOJ的顺序输出.当某个字符用完时,剩下的仍然依照ZOJ的顺序输出. 输入: 题目包括多组用例,每组用例占一行,包括ZOJ ...

  9. Freckles - 九度 OJ 1144

    Freckles - 九度 OJ 1144 题目 时间限制:1 秒 内存限制:128 兆 特殊判题:否 题目描述: In an episode of the Dick Van Dyke show, l ...

最新文章

  1. 使用阿里云服务器安装docker,并用nginx示例
  2. 性能监控工具 NewRelic 简介
  3. freeRtos学习笔(4)消息队列
  4. 浏览器上网 (Safari Chrome)
  5. boost::leaf::exception用法的测试程序
  6. Spring Boot定时任务-Quartz基本使用
  7. html文字斜体变成正体,$$中的字母如何由斜体变成正体?
  8. RocketMQ消费幂等性处理
  9. hdu4956 Poor Hanamichi
  10. Redis回收进程如何工作的?
  11. python查找指定文件夹_python实现在目录中查找指定文件的方法
  12. Gram 矩阵性质及应用
  13. 二维分类教案_屈老师中班数学教案《有趣的笔》
  14. 投稿经验分享之二:国际EI会议(可检索)
  15. WPS文字设置奇偶页眉、下划线的方法步骤
  16. 在使用pyplot时报错MatplotlibDeprecationWarning
  17. Part 4R 不定积分和定积分
  18. 《STL源码剖析》-- stl_map.h
  19. L1正则化及其稀疏性的傻瓜解释
  20. 10天,几万字,源码深度解析之 Spring IOC

热门文章

  1. linux+npm+v+报错_linux – npm install会导致像npm ERR这样的错误...
  2. 分享到facebook链接原格式_神马?!你还不知道Facebook广告怎么操作?
  3. linux提升网络实时性,通过调整Linux内核参数提升网络性能
  4. python读取rar文件_在 python 中,如何读取由 7z 压缩的文本文件_python_酷徒编程知识库...
  5. html中插人视频教程,HTML中插入视频并兼容所有浏览器
  6. java union方法参数_Java Geometry.union方法代碼示例
  7. 合法的python变量名import_python 环境变量和import模块导入方法(详解)
  8. python中的模块原则_python 的模块与包
  9. 【NOIP2013模拟】小喵喵的新家
  10. java dh算法_dh密钥交换算法java