元宵节到了,cyk 表示对 UMR 不服,于是他们进行了一场游戏:
他们面前有 n 个数,玩家轮流每次从这 n 个数中挑选出一个数拿走。玩家选取的数字大小不能超过上一次玩家所拿的数的大小(譬如,上一个玩家拿了 3,那么下一次玩家只能选择 3, 2, …)。当一名玩家无法挑选(没有数字了,或者剩下的数字都比上次玩家挑选的大)的时候则该玩家输掉比赛。今天的比赛是 UMR 先手,两个人都足够聪明,然后 UMR 能不能够赢得比赛呢?
输入数据有多组(数据组数不超过 55),到 EOF 结束。
第一行输入一个整数数 n (1 <= n <= 1000) 表示游戏开始时可以挑选的数的总个数。
第二行 n 个以空格分隔的整数,每个数的范围属于 [1, 1000]。
对于每组数据:
如果 UMR 赢了,输出 "a ha ! cyk , too young too simple sometimes native !"。如果 cyk 赢了, 输出 "en heng UMR , you also have today !"。输出均不包括引号。
42 3 3 351 2 3 4 521 1Example Output
a ha ! cyk , too young too simple sometimes native !a ha ! cyk , too young too simple sometimes native !en heng UMR , you also have today !#include<stdio.h>int a[1001];void QQsort(int left,int right){ int i,j,mid; i=left; j=right; mid=a[i]; if(i>=j) return ; while(i<j) { while(i<j&&a[j]>=mid) j--; a[i]=a[j]; while(i<j&&a[i]<=mid) i++; a[j]=a[i]; } a[i]=mid; qqsort(left,i-1); qqsort(j+1,right);}int main(){ int i,j,n,sum; while(scanf("%d",&n)!=EOF) { for(i=0;i<n;i++) { scanf("%d",&a[i]); } qqsort(0,n-1); for(i=0;i<n;i+=sum) { sum=1; for(j=i+1;j<n;j++) { if(a[i]==a[j]) sum++; } if(sum%2) { printf("a ha ! cyk , too young too simple sometimes native !/n"); break; } } if(i>=n) { printf("en heng UMR , you also have today !/n"); } } return 0;}
新闻热点
疑难解答