bzoj4419 [Shoi2013]发微博 差分
这种题一般都是差分,而且只用推一层,
所以对于加边和删边就直接差分消除影响即可
注意统计答案的时候还在的边也要统计,相当于做删除处理,扫一遍加边删边即可判断,注意在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]发微博 差分相关推荐
- luogu P3998 [SHOI2013]发微博
题目描述 刚开通的 SH 微博共有n个用户(1Ln标号),在这短短一个月的时间内, 用户们活动频繁,共有m 条按时间顺序的记录: ! x 表示用户x发了一条微博: + x y 表示用户x和用户y成为了 ...
- [SHOI2013] 发微博
题目描述: 雾. 题目分析: 刚开始没看到直接关系,XJB YY 其实只需要离线倒着搞就好了 题目链接: BZOJ 4419 Luogu 3998 Ac 代码: #include <cstdio ...
- 微博polg什么意思_贾磊:广东发微博给CBA造成了负面影响 方硕的意思可能没表达清楚...
直播吧11月5日讯 近日做客一档节目时,著名篮球记者贾磊谈到了前天晚上的京粤大战. 贾磊谈到了王骁辉伸腿绊倒威姆斯一事:"我觉得这场比赛,王骁辉的这个动作,大家都看的非常清楚,确实是一个犯规 ...
- selenium操作cookies实现免密登录,自动发微博
一直想用selenium实现个小功能,比如发微博之类的,但是有的网站在登录会有验证码,没想到太好的方法解决,于是想到利用cookies来登录网站 第一步:获取一个可用的cookies,获取的cooki ...
- iOS微博项目(七)发微博和定位
class a导入class b,class b导入class a 会出现错误 如果keyboard不显示,应该是hardware->connect选择了 1. 发微博UI 2.定位 一直不回调 ...
- 实现一个简易版的微博,包含 client 和 server 两部分,并实现四个基础功能:关注、取关、发微博、获取用户微博列表
const assert = require('assert'); const question = '实现一个简易版的微博,包含 client 和 server 两部分,并实现四个基础功能:关注.取 ...
- 俞渝发内部信:呼吁员工发微博、发朋友圈保卫当当
昨日晚间,俞渝发布了一封全员内部信,她在信中表示,李国庆今天清晨六点多钟,带30人来到办公室,将几个保安堵住,进入办公区,用电钻撬开保险柜,抢走了营业执照和U盾,保安受伤. 俞渝呼吁当当童鞋们&quo ...
- 维权靠微博?用户京东金融账户被盗刷15万 处理未果怒发微博曝光
10月25日,今天上午一位微博名为"唐幂_saucerman"的京东金融用户发微博称,其名下账户被盗刷15万元,与京东金融方面处理未果. 文中称,其9月银行卡通过京东金融被盗刷15 ...
- 为app添加发微博功能
2019独角兽企业重金招聘Python工程师标准>>> 如果说要做发微博功能,第一反应就是去下载新浪的sdk,但是sdk太大了,没有针对性,他面对的是所有开发者,个人感觉如果你想做一 ...
最新文章
- Flutter初体验(二)—— 创建第一个Flutter APP
- linux 挂载 nfs 权限,linux – 如何允许写入已挂载的NFS分区
- .Net Core Cors中间件解析
- 1.4 Float类
- kafka详解 转载
- 【Tools】MarkDown教程(六)-Markdown Reference
- maven+SSM框架工程搭建
- 项目class第十四周项目一:动物学叫
- Altium AD20批量修改丝印大小、更改丝印字体、丝印显示中文、更改位号丝印 相对元件的位置
- python中os模块的常用
- 凸优化第二章凸集 2.3保凸运算
- linux安装pip3_Liunx下安装Python3.5.0版本,本地有python2.7.5,python2和3共存
- 如何将poi数据导入arcgis
- 计算机5800计算道路标高程序,强大的高速公路坐标高程计算软件
- 图像的代数运算与逻辑运算——Matlab实现
- 数据存储的各个发展阶段
- 别让你20多岁的活法,毁掉你30岁后的人生
- 一分钟看懂微信服务号和订阅号到底哪个好?
- 数组和链表的顺序遍历的时间比较
- form的onsubmit事件--表单提交前的验证最佳实现方式
热门文章
- oracle .bdb,oracle 11g RAC crfclust.bdb过大的处理
- 设计模式笔记十四:责任链模式
- 版本对应关系python TensorFlow+Keras
- -6dB的效果也不错
- 【汇总】pytorch里的一些函数
- gradle 编译java配置文件_java – 如何在编译时使gradle使用正确的JDK?
- 外卖匹配系统_歧视外卖员的北京SKP是个什么东西?
- 【2020-06-16】CentOS8下yum安装nginx,systemctl start nginx报错undefined symbol: FT_Done_MM_Var
- mysql binlog php处理_MySQL数据的binlog处理方法
- linux服务器系统_利用Zabbix监控系统监测Linux服务器系统时间是否准确完美实现...