这种题一般都是差分,而且只用推一层,

所以对于加边和删边就直接差分消除影响即可

注意统计答案的时候还在的边也要统计,相当于做删除处理,扫一遍加边删边即可判断,注意在vector里可能出现多次,只统计一次

码:

#include<iostream>
#include<cstdio>
#include<vector>
using namespace std;
vector<int>v[200005],chu[200005];
int n,m,ans[200005],i,j,o,cnt[200005],a,b,ci[200005];
char op[5];
int main()
{
scanf("%d%d",&n,&m);
for(i=1;i<=m;i++)
{
    scanf("%s",op);
    if(op[0]=='!')
    {
        scanf("%d",&o);
        cnt[o]++;
    }
    if(op[0]=='+')
    {
        scanf("%d%d",&a,&b);
        v[a].push_back(b);
        ans[b]-=cnt[a];
        v[b].push_back(a);
        ans[a]-=cnt[b];
    }
        if(op[0]=='-')
    {
        scanf("%d%d",&a,&b);
        chu[a].push_back(b);
        ans[b]+=cnt[a];
        chu[b].push_back(a);
        ans[a]+=cnt[b];
    }

}
for(i=1;i<=n;i++)
{
    for(j=0;j<v[i].size();j++)
    ci[v[i][j]]=0;
    for(j=0;j<v[i].size();j++)
    ci[v[i][j]]++;
    for(j=0;j<chu[i].size();j++)
    ci[chu[i][j]]--;
    for(j=0;j<v[i].size();j++)
if(ci[v[i][j]])ans[v[i][j]]+=cnt[i],ci[v[i][j]]=0;
}
for(i=1;i<=n-1;i++)
printf("%d ",ans[i]);
printf("%d",ans[i]);

}

bzoj4419 [Shoi2013]发微博 差分相关推荐

  1. luogu P3998 [SHOI2013]发微博

    题目描述 刚开通的 SH 微博共有n个用户(1Ln标号),在这短短一个月的时间内, 用户们活动频繁,共有m 条按时间顺序的记录: ! x 表示用户x发了一条微博: + x y 表示用户x和用户y成为了 ...

  2. [SHOI2013] 发微博

    题目描述: 雾. 题目分析: 刚开始没看到直接关系,XJB YY 其实只需要离线倒着搞就好了 题目链接: BZOJ 4419 Luogu 3998 Ac 代码: #include <cstdio ...

  3. 微博polg什么意思_贾磊:广东发微博给CBA造成了负面影响 方硕的意思可能没表达清楚...

    直播吧11月5日讯 近日做客一档节目时,著名篮球记者贾磊谈到了前天晚上的京粤大战. 贾磊谈到了王骁辉伸腿绊倒威姆斯一事:"我觉得这场比赛,王骁辉的这个动作,大家都看的非常清楚,确实是一个犯规 ...

  4. selenium操作cookies实现免密登录,自动发微博

    一直想用selenium实现个小功能,比如发微博之类的,但是有的网站在登录会有验证码,没想到太好的方法解决,于是想到利用cookies来登录网站 第一步:获取一个可用的cookies,获取的cooki ...

  5. iOS微博项目(七)发微博和定位

    class a导入class b,class b导入class a 会出现错误 如果keyboard不显示,应该是hardware->connect选择了 1. 发微博UI 2.定位 一直不回调 ...

  6. 实现一个简易版的微博,包含 client 和 server 两部分,并实现四个基础功能:关注、取关、发微博、获取用户微博列表

    const assert = require('assert'); const question = '实现一个简易版的微博,包含 client 和 server 两部分,并实现四个基础功能:关注.取 ...

  7. 俞渝发内部信:呼吁员工发微博、发朋友圈保卫当当

    昨日晚间,俞渝发布了一封全员内部信,她在信中表示,李国庆今天清晨六点多钟,带30人来到办公室,将几个保安堵住,进入办公区,用电钻撬开保险柜,抢走了营业执照和U盾,保安受伤. 俞渝呼吁当当童鞋们&quo ...

  8. 维权靠微博?用户京东金融账户被盗刷15万 处理未果怒发微博曝光

    10月25日,今天上午一位微博名为"唐幂_saucerman"的京东金融用户发微博称,其名下账户被盗刷15万元,与京东金融方面处理未果. 文中称,其9月银行卡通过京东金融被盗刷15 ...

  9. 为app添加发微博功能

    2019独角兽企业重金招聘Python工程师标准>>> 如果说要做发微博功能,第一反应就是去下载新浪的sdk,但是sdk太大了,没有针对性,他面对的是所有开发者,个人感觉如果你想做一 ...

最新文章

  1. Flutter初体验(二)—— 创建第一个Flutter APP
  2. linux 挂载 nfs 权限,linux – 如何允许写入已挂载的NFS分区
  3. .Net Core Cors中间件解析
  4. 1.4 Float类
  5. kafka详解 转载
  6. 【Tools】MarkDown教程(六)-Markdown Reference
  7. maven+SSM框架工程搭建
  8. 项目class第十四周项目一:动物学叫
  9. Altium AD20批量修改丝印大小、更改丝印字体、丝印显示中文、更改位号丝印 相对元件的位置
  10. python中os模块的常用
  11. 凸优化第二章凸集 2.3保凸运算
  12. linux安装pip3_Liunx下安装Python3.5.0版本,本地有python2.7.5,python2和3共存
  13. 如何将poi数据导入arcgis
  14. 计算机5800计算道路标高程序,强大的高速公路坐标高程计算软件
  15. 图像的代数运算与逻辑运算——Matlab实现
  16. 数据存储的各个发展阶段
  17. 别让你20多岁的活法,毁掉你30岁后的人生
  18. 一分钟看懂微信服务号和订阅号到底哪个好?
  19. 数组和链表的顺序遍历的时间比较
  20. form的onsubmit事件--表单提交前的验证最佳实现方式

热门文章

  1. oracle .bdb,oracle 11g RAC crfclust.bdb过大的处理
  2. 设计模式笔记十四:责任链模式
  3. 版本对应关系python TensorFlow+Keras
  4. -6dB的效果也不错
  5. 【汇总】pytorch里的一些函数
  6. gradle 编译java配置文件_java – 如何在编译时使gradle使用正确的JDK?
  7. 外卖匹配系统_歧视外卖员的北京SKP是个什么东西?
  8. 【2020-06-16】CentOS8下yum安装nginx,systemctl start nginx报错undefined symbol: FT_Done_MM_Var
  9. mysql binlog php处理_MySQL数据的binlog处理方法
  10. linux服务器系统_利用Zabbix监控系统监测Linux服务器系统时间是否准确完美实现...