1363:Rails java实现

这个题....题目本身难理解。

题目:1363:Rails

意思是按照顺序入栈,在随时能够出栈的情况下,能不能按照测试用例的顺序出栈...

样例输入

5
1 2 3 4 5
5 4 1 2 3
0
6
6 5 4 3 2 1
0
0

样例输出

Yes
No

Yes

表示:
第一行:给定5个车厢,编号1~5
第二行:给定了一个顺序
第三行:给定了一个顺序
第四行:表示当前用例结束
第五行:开始下一个用例,车厢数量
....
倒数第二行:用例结束
最后一行:总输入结束。

AC代码:

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayDeque;
import java.util.StringTokenizer;

public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s="";
String input="";
ArrayDeque dq = new ArrayDeque<>();
while (!(s=br.readLine()).equals("0")){
int len = Integer.parseInt(s);
while(!(input = br.readLine()).equals("0")){
String[] inputStr = input.split(" ");
dq = new ArrayDeque<>();
int index=0;
for(int i =1;i<=len;i++){
dq.push(String.valueOf(i));
while (!dq.isEmpty()&&dq.peek().equals(inputStr[index])){
dq.pop();
index++;
}
}
if(dq.isEmpty()){
System.out.println("Yes");
}
else{
System.out.println("No");
}
}
System.out.println();

    }
}

}

上一篇:webmagic框架protocol_version问题处理


下一篇:集合系列 Queue(十一):ArrayDeque