比赛 Asm.Def战记之圣地亚哥“杯2015 评测结果 AAAAAAAAAA
题目名称 Asm.Def的游戏 最终得分 100
用户昵称 炎帝 运行时间 0.095 s
代码语言 C++ 内存使用 2.03 MiB
提交时间 2015-10-31 18:55:52
显示代码纯文本
#include<cstdio>
#include<queue>
#include<vector>
using namespace std;
vector<int>A[100010];
int du[100010],Ans,n,m;
queue<int>que;
int EPX;
bool vis[100010],init[100010];
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);
}
int main(){
    freopen("asm_game.in","r",stdin);
	freopen("asm_game.out","w",stdout);
	in(n);in(m);
	for(int i=1;i<=m;++i){
		int x,y; in(x);in(y);du[y]++;du[x]++;
		A[x].push_back(y);A[y].push_back(x);
	}
	for(int i=1;i<=n;++i)
	  if(du[i]<3) vis[i]=1,que.push(i);
	while(!que.empty()){
		int yu=que.front();que.pop();
		for(int i=0;i<A[yu].size();++i){
			du[A[yu][i]]--;
			if(du[A[yu][i]]<3&&!vis[A[yu][i]]){
				vis[A[yu][i]]=1;
				que.push(A[yu][i]);
			}
		}
	}
	for(int i=1;i<=n;++i)
	 if(!vis[i]) Ans^=i;
	printf("%d",Ans);
	return 0;
}