HDU 1524
2024-09-30 14:19:28
思路:
算出来每个点的sg值,然后对于每个询问xor一下
//By SiriusRen
#include <cstdio>
#include <vector>
using namespace std;
const int N=;
int n,m,xx,yy,sg[N],vis[N],tmp[N];
vector<int>vec[N];
void dfs(int x){
vis[x]=;
for(int i=;i<vec[x].size();i++)dfs(vec[x][i]);
for(int i=;i<vec[x].size();i++)tmp[sg[vec[x][i]]]=;
for(int i=;i<=n;i++)if(!tmp[i]){sg[x]=i;break;}
for(int i=;i<vec[x].size();i++)tmp[sg[vec[x][i]]]=;
}
int main(){
while(~scanf("%d",&n)){
for(int i=;i<n;i++){
scanf("%d",&xx);
while(xx--)scanf("%d",&yy),vec[i].push_back(yy);
}
for(int i=;i<n;i++)if(!vis[i])dfs(i);
for(int i=;i<n;i++)vec[i].clear(),vis[i]=;
while(scanf("%d",&m)&&m){
int ans=;
for(int i=;i<=m;i++)scanf("%d",&xx),ans^=sg[xx];
puts(ans?"WIN":"LOSE");
}
}
}
最新文章
- 用.net在画出镂空图片
- SQL Server里的INTERSECT
- Class.forName(";ClassName";)与ClassName.class的区别
- 【CITE】 C#中实现拖动无边框Form窗体
- CEO应向软件工程师学习的7个技能
- E时代主机,其实做一个小虚拟主机还是不错的
- 【JavaScript】关于js的一些理解
- CentOS服务器的16个监控命令
- TCP/IP协议原理与应用笔记19:IP分组的交付和路由选择
- template_11实参演绎
- Linux 安装 Python3.5
- centos安装vim以及设置
- 常用的js对象扩展方法
- ListView 介绍
- 微软移除WIN10密码过期政策Microsoft Removes Password-Expiration Policy in Windows 10
- siege压力测试工具安装和介绍
- Mybatis(一)走进Mybatis与FisrtExample
- python练习题-day4
- mysql 解锁
- 10. eclipse在选中一个变量之后,怎样让所有相同的变量都有灰色背景显示
热门文章
- [TypeScript] Transform Existing Types Using Mapped Types in TypeScript
- HTML的DIV如何实现水平居中
- powershell 通过SMTP发送邮件
- ASP.NET Web Pages - 教程
- MYSQL 增加字段不报错,插入数据不报错处理
- FancyCoverFlow
- leetCode 81.Search in Rotated Sorted Array II (旋转数组的搜索II) 解题思路和方法
- SVN代码丢失惊魂
- 识别jar的编译JDK版本
- linux多线程编程入门