这个题....题目本身难理解。
题目: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
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();
} }
}