记录编号 202081 评测结果 AAAAAAAAAA
题目名称 [SYOI 2015] Asm.Def的游戏 最终得分 100
用户昵称 Gravatar神利·代目 是否通过 通过
代码语言 C++ 运行时间 0.049 s
提交时间 2015-10-31 17:56:16 内存使用 51.59 MiB
显示代码纯文本
#include<cstdio>
int ans,EPX,n,m,u,v,shu,first[101000],du[101000];
inline void in(int &TEMP)
{
	for(TEMP=getchar();TEMP<48||TEMP>57;TEMP=getchar());
	TEMP^=48;
	for(EPX=getchar();EPX<58&&EPX>47;EPX=getchar())
		TEMP=(TEMP<<3)+(TEMP<<1)+(EPX^48);
}
struct bian
{
	int v,next;
}o[1110000];
inline void add(int u,int v)
{
	o[++shu].v=v;
	o[shu].next=first[u];
	first[u]=shu;
}
bool flag[101000];
int l,r=-1,q[11000000];
int main()
{
	freopen("asm_game.in","r",stdin);
	freopen("asm_game.out","w",stdout);
	in(n),in(m);
	while(m--)
	{
		in(u),in(v);
		++du[u],++du[v];
		add(u,v);
		add(v,u);
	}
	for(int i=1;i<=n;++i)
	    if(du[i]<3)
		{
			q[++r]=i;
			flag[i]=1;
		}
	while(l<=r)
	{
		u=q[l++];
		for(int i=first[u];i;i=o[i].next)
		    if(!flag[o[i].v])
		    {
				--du[o[i].v];
				--du[u];
				if(du[o[i].v]<3)
				{
				    q[++r]=o[i].v;
				    flag[o[i].v]=1;
				}
		    }
	}
	for(int i=1;i<=n;++i)
	    if(!flag[i])
	        ans^=i;
	printf("%d",ans);
}