在一个叫「堆叠市」的城市中有一个有名的火车站。由于地形限制以及经费的关系,火车站及唯一的铁路的样子如下图:
现在火车从A方向来,预定从B方向离开。火车共有N节车厢(N <=1000),并且各车厢依次以1到N来编号。你可以假设各车厢在进站之前可以单独与其他车厢分离,也可以单独离开车站到往B方向的铁轨上。你也可以假设在任何时间火车站都可以容纳所有的车厢。但是一旦一节车厢进站后,就不能再回到A方向的铁轨上了,并且一旦离开车站往B方向后,也不能再回到车站。
现在你的任务是写一个程序,判断火车能否以一特定的排列方式在B方向的铁轨上
Input
输入含有多组测试数据。每组测试数据的第一列,有1个整数N,其意义如上所述。对于此组测试数据接下来有0到多个不等的测试,每个测试一列,每列有N个整数,内容为1,2,……,N的任意排列。当遇到仅含有一个0的一列,代表该组测试数据结束。
N=0代表输入结束,请参考Sample Input。
Output
对每一组测试数据的每个测试,输出该1,2,……,N的任意排列是否可能。如果可能,请输出yes,若不可能则输出No。
每组测试数据后亦请空一列。请参考Sample Output
Sample Input
5 1 2 3 4 5 5 4 3 2 1 5 4 1 2 3 0 7 4 5 3 7 6 2 1 0 0
Sample Output
Yes Yes No Yes