Problem1673--栈--洗盘子2

1673: 栈--洗盘子2

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 636  Solved: 349
[Status] [Submit] [Creator:]

Description

皮皮在大排档兼职洗碗工,他身边有一堆餐盘要洗。客人们吃完饭之后,要洗的盘子会放在这叠餐盘的顶端,
而皮皮洗盘子的时候总会取出这叠餐盘最顶上的盘子来洗,
开始时,没有待清洗餐盘,之后会发生两种事件:
1.新餐盘加入:我们读入一个正整数 a 时,表示编号为 a 的餐盘放在餐盘顶端;
2.清洗餐盘:我们读入一个 0 时,表示只清洗顶端的一个餐盘。
两种事件一共发生了 n 次


在洗盘子过程中, 
盘子最多叠放20个,如果堆放超过20个盘子,皮皮直接停下洗碗,并且会生气,输出“shengqi” 
如果已经没有待清洗的盘子,还让皮皮洗盘子,皮皮也会直接停下洗碗,输出“moyu” 
如果没有出现上面2种情况,输出“zhengchang” 

Input

输入共 2 行:
第 1 行,一个正整数 n,为事件发生了次数;
第 2 行,n 个非负整数 若 ai > 0,事件是 ai 号餐盘放在餐盘顶端;若 ai = 0,事件是清洗排在顶端的餐盘。

Output

在洗盘子过程中, 
盘子最多叠放20个,如果堆放超过20个盘子,皮皮直接停下洗碗,并且会生气,输出“shengqi” 
如果已经没有待清洗的盘子,还让皮皮洗盘子,皮皮也会直接停下洗碗,输出“moyu” 
如果没有出现上面2种情况,输出“zhengchang” 

Sample Input Copy

8 
1 2 3 0 4 0 5 6

Sample Output Copy

zhengchang

HINT

输入样例2:
21
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
输出样例2:
shengqi


输入样例3:
4
1 0 0 2
输出样例:
moyu

Source/Category

 提高A