首页 > 代码库 > 9度oj 题目1006:ZOJ问题【递推】
9度oj 题目1006:ZOJ问题【递推】
时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:14782
解决:2482
- 题目描述:
- 对给定的字符串(只包含‘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年浙江大学计算机及软件工程研究生机试真题
- 思路:注意开始o的个数、中间o的个数、结尾o的个数,这3者之间的关系!
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner cin = new Scanner(System.in); String str; while(cin.hasNext()) { str = cin.next(); int len = str.length(); int s1 = 0,s2=0,i=0; int z1=0,j1=0; for(i=0;i<len;i++) { if(str.charAt(i)=='z') z1++; if(str.charAt(i)=='j') j1++; } if(!(z1==1&&j1==1)) { System.out.println("Wrong Answer"); continue; } for(i=0;i<len;i++) { if(str.charAt(i)=='z') { s1=i; } if(str.charAt(i)=='j') { s2=i-s1-1; break; } } if(s1*s2==len-i-1&&s2!=0) System.out.println("Accepted"); else System.out.println("Wrong Answer"); } cin.close(); } }
9度oj 题目1006:ZOJ问题【递推】
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。