摘要: 通过这道题目我们更加可以看清楚sg函数中的图的一些性质。。#include<iostream>#include<vector>using namespace std;const int MAXN=1002;vector<int>v[MAXN];int dp[MAXN];int sg(int p){ if(dp[p]!=-1) { return dp[p]; } int i; bool visited[MAXN]; memset(visited,0,sizeof(visited)); for(i=0;i<=int(v[p].size())-... 阅读全文
posted @ 2012-08-01 14:16 77695 阅读(621) 评论(0) 推荐(0) 编辑
摘要: #include<iostream>using namespace std;const int MAXN=12;const int MOD=9973;struct matrix{ int data[MAXN][MAXN]; int n; void init() { int i,j; for(i=0;i<=MAXN-1;i++) { for(j=0;j<=MAXN-1;j++) { data[i][j]=0; } } ... 阅读全文
posted @ 2012-08-01 14:14 77695 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 用sg函数对每组数据中所有的数处理。。得到的结果异或。为0必输。。否则必胜#include<iostream>//#include<algorithm>#include<set>#include<cstdio>using namespace std;//const int MAXK=102;const int MAXM=102;//const int MAXL=102;const int MAXH=10002;set<int>de;int dp[MAXH];inline int sg(int cur){ if(dp[cur]!=-1) 阅读全文
posted @ 2012-08-01 14:12 77695 阅读(895) 评论(0) 推荐(0) 编辑
摘要: 按理来说应该会有二维的树状数组的算法吧。。可是我不知道。。于是就用一维的方式在累加了。。时间复杂度大概在o(m*n*log(n))。。直接暴力是o(m*n^2)#include<iostream>using namespace std;const int MAXN=1003;int data[MAXN][MAXN];void swap(int &a,int &b){ int t; t=a; a=b; b=t;}int lowbit(int idx){ return idx & (-idx);}void add(int x,int y,int inc,int 阅读全文
posted @ 2012-08-01 14:02 77695 阅读(331) 评论(0) 推荐(0) 编辑
摘要: 一段这样的代码。。 switch(c) { int x1,y1,x2,y2,n1; case 'S': int suum=0; cout<<suum<<endl; break; }看似没错对吧。。但在devc++里面无法编译通过。。提示错误:error: jump to case label问题其实很简单就是一个变量的作用域的问题只需... 阅读全文
posted @ 2012-08-01 10:59 77695 阅读(1066) 评论(0) 推荐(0) 编辑