#P17362. PM17283_DoubleXorGame

PM17283_DoubleXorGame

题目描述

有一个包含 NN 个顶点的小型有向图,顶点编号为 0,1,,N10,1,\ldots,N-1。大图由 KK 份完全相同且彼此不相交的小图副本组成。小图没有自环和重边,但可以包含有向环。

每个顶点为黑色或白色。两名玩家轮流行动,每次操作如下:

  1. 选择一个当前为黑色的顶点 vv
  2. 如果 vv 有至少一条出边,还必须选择它的一个出边终点 ww;如果 vv 没有出边,则不选择第二个顶点;
  3. 将所有被选择顶点的颜色翻转:黑变白,白变黑。

当所有顶点都变为白色时游戏结束,无法行动的玩家失败。由于图中可能存在环,有些局面在双方最优策略下既没有任何一方能强制获胜,又都能避免失败,这种结果称为平局。

小图的边由两个等长数组 X,YX,Y 给出,第 ii 条边为 XiYiX_i\to Y_i。大图中每份副本的初始黑白状态由一个整数 state 表示:其第 jj 位为 11 当且仅当该副本的顶点 jj 初始为黑色。

请判断先手在双方最优策略下的结果:若先手必胜输出 win,必败输出 lose,否则输出 draw

输入格式

输入采用与原 TopCoder 数组参数一致的统一序列化格式:

  • 第一行一个整数 NN
  • 第二行一个整数 MXM_X,表示数组 XX 的长度;
  • 第三行包含 MXM_X 个整数 X1,,XMXX_1,\ldots,X_{M_X};若 MX=0M_X=0,该行为空;
  • 第四行一个整数 MYM_Y
  • 第五行包含 MYM_Y 个整数 Y1,,YMYY_1,\ldots,Y_{M_Y};若 MY=0M_Y=0,该行为空;
  • 第六行一个整数 KK,表示 states 的长度;
  • 第七行包含 KK 个整数 state1,,stateKstate_1,\ldots,state_K

保证 MX=MYM_X=M_Y,并满足:

  • 1N121\le N\le12
  • 0MXN(N1)0\le M_X\le N(N-1)
  • 0Xi,Yi<N0\le X_i,Y_i<NXiYiX_i\ne Y_i
  • 所有有向边互不相同;
  • 1K501\le K\le50
  • 0statei<2N0\le state_i<2^N

输出格式

输出一行字符串 winlosedraw

样例 1

输入

1
0

0

5
1 1 1 0 1

输出

lose

样例 2

输入

3
3
0 1 2
3
1 2 0
1
4

输出

draw