NC215116. GDPCarry
描述
小西和Antinomy又来到君武楼,这里正在做A+类竞赛校赛的答辩,他们偷偷翻了翻参加答辩的项目组的项目计划书,发现每个计划书都有日流水这样的指标,他们决定做一个游戏。
现在有个项目计划书,每个计划书上有一个日流水数字,将这个日流水视为一个长度为的序列,两人轮流操作,Antinomy先手,
Antinomy每次需要把中非空的连续的一段移除,要求这一段的元素和需要为奇数;小西也每次需要把F中非空的连续的一段移除,但是这一段的元素和需要为偶数,如果轮到谁的时候无法操作下去那么这个人就判定为输。移除一段之后,原来这一段之前的部分和原来这一段之后的部分也视为连续。
已知他们都会采取最优的策略,给出这个日流水,请问最后谁会赢呢?
输入描述
第一行输入,表示的长度,接下来一行个整数分别表示
输出描述
输出一行一个字符串表示胜利者,如果Antinomy胜利那么输出Antinomy,否则输出XiJam
示例1
输入:
4 1 2 3 4
输出:
Antinomy
示例2
输入:
3 2 2 4
输出:
XiJam
C++(clang++11) 解法, 执行用时: 112ms, 内存消耗: 392K, 提交时间: 2020-12-19 20:17:29
#include<cstdio> bool ok; int main(){ int n;scanf("%d", &n); for(int i=0;i<n;i++){ int f;scanf("%d", &f); if(f&1)ok=1; } printf("%s",ok==1?"Antinomy":"XiJam"); return 0; }
C(clang11) 解法, 执行用时: 106ms, 内存消耗: 372K, 提交时间: 2020-12-20 16:30:58
#include<stdio.h> int main() { int t,n,i; scanf("%d",&t); while(t--){ scanf("%d",&n); if(n%2!=0) { printf("Antinomy\n");return 0;} } printf("XiJam\n"); return 0; }
Python3 解法, 执行用时: 431ms, 内存消耗: 67480K, 提交时间: 2021-12-10 18:05:37
n=input() m=input().split(' ') a=0 for i in m: if int(i)%2==1: a+=1 if a==0: print('XiJam') else: print('Antinomy')
pypy3(pypy3.6.1) 解法, 执行用时: 367ms, 内存消耗: 83264K, 提交时间: 2020-12-19 13:47:19
n = int(input()) l = map(int, input().split()) for x in l: if x % 2 == 1: print('Antinomy') exit(0) print('XiJam')