差分后与阶梯博弈很类似。
#include<cstdio> using namespace std; int n,T,a[1001],ans; int main() { scanf("%d",&T); for(;T;--T) { ans=0; scanf("%d",&n); for(int i=1;i<=n;++i) scanf("%d",&a[i]); for(int i=n;i>=1;i-=2) ans^=(a[i]-a[i-1]); puts(ans?"TAK":"NIE"); } return 0; }