给 定 的 串 是 只 有 0 和 1 的 串 给定的串是只有0和1的串 给定的串是只有0和1的串

那 么 我 可 以 说 , 假 定 串 中 有 3 个 0 , 有 6 个 1 那么我可以说,假定串中有3个0,有6个1 那么我可以说,假定串中有3个0,有6个1

无 论 这 些 0 和 1 的 位 置 在 哪 里 , 无 论 我 怎 么 操 作 无论这些0和1的位置在哪里,无论我怎么操作 无论这些0和1的位置在哪里,无论我怎么操作

一 定 是 不 多 不 少 可 以 消 掉 3 个 01 或 10 一定是不多不少可以消掉3个01或10 一定是不多不少可以消掉3个01或10

因 为 只 要 存 在 0 和 1 , 就 必 然 有 1 和 0 会 相 邻 因为只要存在0和1,就必然有1和0会相邻 因为只要存在0和1,就必然有1和0会相邻

只 要 相 邻 就 可 以 消 掉 , 所 以 压 根 不 用 管 A l i c a 和 B o b 怎 么 操 作 只要相邻就可以消掉,所以压根不用管Alica和Bob怎么操作 只要相邻就可以消掉,所以压根不用管Alica和Bob怎么操作

直 接 算 出 能 操 作 的 次 数 , 是 奇 数 就 是 A l i c a 赢 , 否 则 B o b 赢 直接算出能操作的次数,是奇数就是Alica赢,否则Bob赢 直接算出能操作的次数,是奇数就是Alica赢,否则Bob赢

#include <bits/stdc++.h>
using namespace std;
const int maxn=1009;
int t;
char a[maxn];
int main()
{
cin>>t;
while(t--)
{
cin>>(a+1);
int q=0,w=0;
for(int i=1;i<=strlen(a+1);i++)
if(a[i]=='0') q++;
else w++;
int s=min(q,w);
if(s%2==1) cout<<"DA";
else cout<<"NET";
cout<<endl;
}
}