题目大意:
问m个问题里面 前面有多少个问题是不矛盾的。
问题是问区间里的 1 个个数是奇数还是偶数。
思路分析:
和 hdu 3038 是一个模型。
然后判断奇偶用异或就可以了。
#include#include #include #include using namespace std; int set[55555]; int sum[55555]; struct node { int s,e; char op; }Q[55555]; int x[55555]; int abs(int x) { return x>0 x:-x; } int find(int x) { if(x!=set[x]) { int f=set[x]; set[x]=find(set[x]); sum[x]=(sum[x]^sum[f]); } return set[x]; } int main() { int n,m; while(scanf("%d%d",&n,&m)!=EOF) { int cnt=0; for(int i=0;i<=m*2;i++)set[i]=i,sum[i]=0; char str[10]; for(int i=0;i