http://www.lydsy.com/JudgeOnline/problem.php?id=3562

 //Accepted    6020 kb    1012 ms
 //由于题目的特殊要求:然而,令科学家们大为惊异的是,SHTSC 在变化过程中始终保持着一种特殊的性质:
 //即不存在这样的原子序列 a1,a2,...,an(n>3)满足 a1 与 a2、a2 与
 //a3、......、an-1 与 an 以及 an 与 a1 都通过化学键相连,但它们之间却没有其他化学键相连的情况。
 //所以有如下结论:
 //记所求答案为ans
 //对于A x y,判断是否存在另外的一个点z使x,z有边,y,z有边
 //如果存在z,则操作以后ans不变,否则ans+=1;
 //对于D x y,判断是否存在另外的一个点z使x,z有边,y,z有边
 //如果存在z,则操作以后ans不变,否则ans-=1;
 #include <cstdio>
 #include <cstring>
 #include <iostream>
 #include <queue>
 #include <cmath>
 #include <algorithm>
 using namespace std;
 #define ll long long
 ;
 ;
 struct node
 {
     int v,u;
     node()
     {

     }
     node(int u,int v):u(u),v(v)
     {

     }
 }p[imax_m];
 int head[imax_n],next[imax_m];
 int e;
 int vis[imax_n];
 int ans;
 int Q;
 int n,m;
 void init()
 {
     memset(head,-,sizeof(head));
     memset(next,-,sizeof(next));
     e=;
 }
 void addEdge(int u,int v)
 {
     p[e]=node(u,v);
     next[e]=head[u];
     head[u]=e++;
 }
 void deleteEdge(int u,int v)
 {
     ,i;
     ;i=next[i])
     {
         if (p[i].v==v) break;
         pre=i;
     }
     )
     {
         //head[u]=next[next[i]];
         head[u]=next[i];
     }
     else
     {
         //next[pre]=next[next[i]];
         next[pre]=next[i];
     }
 }
 void dfs(int u)
 {
     vis[u]=;
     ;i=next[i])
     {
         int v=p[i].v;
         if (!vis[v])
         dfs(v);
     }
 }
 int countTheNumberOfGraph()
 {
     memset(vis,,sizeof(vis));
     ;
     ;i<=n;i++)
     {
         if (!vis[i])
         {
             dfs(i);
             ans++;
         }
     }
     return ans;
 }
 /*
 bool find(int x,int y)
 {
     int flag=0;
     for (int i=1;i<=n;i++)
     {
         if (i==x) continue;
         if (i==y) continue;
         flag=0;
         for (int j=head[i];j+1;j=next[j])
         {
             if (p[j].v==x) flag++;
             if (p[j].v==y) flag++;
             if (flag==2) return 1;
         }
     }
     return 0;
 }
 */
 int mark[imax_n];
 bool find(int x,int y)
 {
     memset(mark,,sizeof(mark));
     ;i=next[i])
     {
         if (p[i].v!=y)
         mark[p[i].v]++;
     }
     ;i=next[i])
     {
         if (p[i].v!=x)
         mark[p[i].v]++;
     }
     ;i<=n;i++)
     {
         //printf("mark[%d]=%d\n",i,mark[i]);
         ) ;
     }
     ;
 }
 void operatorA(int x,int y)
 {
     )
     {
         //printf("A %d %d ans--\n",x,y);
         ans--;
     }
     addEdge(x,y);
     addEdge(y,x);
 }
 void operatorD(int x,int y)
 {
     )
     {
         //printf("D %d %d ans++\n",x,y);
         ans++;
     }
     deleteEdge(x,y);
     deleteEdge(y,x);
 }
 void operatorQ()
 {
     printf("%d\n",ans);
 }
 ];
 int main()
 {
     //freopen("in.txt","r",stdin);
     //freopen("out.txt","w",stdout);
     )
     {
         int x,y;
         init();
         ;i<m;i++)
         {
             scanf("%d%d",&x,&y);
             addEdge(x,y);
             addEdge(y,x);
         }
         ans=countTheNumberOfGraph();
         scanf("%d",&Q);
         ;i<Q;i++)
         {
             scanf("%s",s);
             ]=='A')
             {
                 scanf("%d%d",&x,&y);
                 operatorA(x,y);
             }
             ]=='D')
             {
                 scanf("%d%d",&x,&y);
                 operatorD(x,y);
             }
             ]=='Q')
             {
                 operatorQ();
             }
         }
     }
     ;
 }

大视野3562 [SHOI2014]神奇化合物的更多相关文章

  1. BZOJ3562 : [SHOI2014]神奇化合物

    可以发现,从头到尾有一堆点是始终连在一起的,所以把没被删掉的一开始就有的边都加上后求出每个联通块, 缩完点后我们发现,边数也减少得差不多了,剩下的就直接暴力. #include<cstdio&g ...

  2. python3爬取”理财大视野”中的股票,并分别写入txt、excel和mysql

    需求:爬取“理财大视野”网站的排名.代码.名称.市净率.市盈率等信息,并分别写入txt.excel和mysql 环境:python3.6.5 网站:http://www.dashiyetouzi.co ...

  3. 【大视野入门OJ】1099:歌德巴赫猜想

    Description 歌德巴赫猜想大家都很熟悉吧?给一个数,能够分解成两个素数的和.现在要给你一个n,6 <= n < 1000000,让你求他会分解成哪两个素数?如果存在多组解,则要求 ...

  4. VS大视野

    vs的本质:他是微软公司的员工一起开发的一个项目: 既然是项目:那么就是用编程语言编出来的! 用的是C# C#有他的特点:继承,封装,多态!等 我们在使用vs的时候,为什么可以使用很多的里面已经存在的 ...

  5. [bzoj\lydsy\大视野在线测评]题解(持续更新)

    目录: 一.DP 二.图论 1.最短路 2.强连通分量 三.利用单调性维护 四.贪心 五.数据结构 1.并查集 六.数学 1.计数问题 2.数学分析 七.博弈 八.搜索 /////////////// ...

  6. 【大视野入门OJ】1083:数组的二分查找

    Description 在1500个整数中查整数x的位置,这些数已经从小到大排序了.若存在则输出其位置,若不存在则输出-1. Input 第一行,一个整数x 后面1500行,每行一个整数 Output ...

  7. 大视野 1012: [JSOI2008]最大数maxnumber(线段树/ 树状数组/ 单调队列/ 单调栈/ rmq)

    1012: [JSOI2008]最大数maxnumber Time Limit: 3 Sec  Memory Limit: 162 MBSubmit: 9851  Solved: 4318[Submi ...

  8. BZOJ4974 大视野1708月赛 字符串大师

    传送门 题目大意 给定一个字符串的每一个前缀的最短循环节长度,求符合要求的字典序最小的字符串. 题解 给定循环节最短长度就是给定了这个字符串$kmp$的$next$数组,即$X_i=i-next_i$ ...

  9. 大视野 1016: [JSOI2008]最小生成树计数(最小生成树)

    总结:此类题需要耐心观察规律,大胆猜想,然后证明猜想,得到有用的性质,然后解答. 简单的说:找隐含性质. 传送门:http://61.187.179.132/JudgeOnline/problem.p ...

随机推荐

  1. java.lang.ClassNotFoundException: org.springframework.web.filter.CharacterEncodingFilter

    今天在用git merge 新代码后报了如下错误:java.lang.ClassNotFoundException: org.springframework.web.filter.CharacterE ...

  2. 撤销git reset soft head操作

    一不小心在eclipse的git库中执行了Reset Soft(HEAD ONLY)操作,不料界面中竟然没有找到撤销方法(于是心中五味俱全,经过一番折腾,无果还是回归Git本身),最终通过命令行,很快 ...

  3. JAVA开发错误总结(仅记录遇到的错误---后续不断更新......)

    =======华丽分割线(工具总结)===================== 1:Maven项目中junit测试找不到主类的问题 Class not found com.test.utils.tes ...

  4. centos6.5安装node.js

    一次偶然的机会知道有nodejs这个东西,确实对它还是很感兴趣的.刚开始只知道它能让javascript写后台,然后前后台都由javascript来写,确实觉得真的挺爽,毕竟人总是喜欢在自己熟悉领域做 ...

  5. DOM hash

    前段时间做的一个H5专题,用到了hash解决问题,特意记录一下.DOM hash的详细内容可以点击链接查看. hash就是uri中#及后面的部分,例如:www.google.com.hk#123的#1 ...

  6. Unity3d调用iOS陀螺仪

    How to write gyroscope controller with Unity3d http://blog.heyworks.com/how-to-write-gyroscope-contr ...

  7. cordova iOS blank iframe iphone iframe 白屏 ios iframe 白屏

    (1)解决方案 http://stackoverflow.com/questions/36572537/cordova-ios-blank-iframe/36587026 在 index.html中配 ...

  8. [HTML/HTML5]8 使用表格

    8.1  创建基本的表格结构 8.1.1  表格结构 HTML表格包含4种基本元素: table:在HTML中table元素是一个容器,其中包含用于创建表格的其它的元素: tr:表示表格中的行,开始标 ...

  9. TensorFlow 在android上的Demo(1)

    转载时请注明出处: 修雨轩陈 系统环境说明: ------------------------------------ 操作系统 : ubunt 14.03 _ x86_64 操作系统 内存: 8GB ...

  10. hg0088新2网址

    封装通俗的说,就是我有一些秘密不想让人知道,就通过私有化变量和私有化方法,这样外界就访问不到了.hg0088新2网址然后如果你有一些很想让大家知道的东西,你就可以通过this创建的属性看作是对象共有属 ...