BZOJ2330 SCOI2011糖果
复习了一波差分约束。
http://blog.csdn.net/my_sunshine26/article/details/72849441
构图方式记住就好。
本题要倒序插入否则会被卡。
1 #include<bits/stdc++.h> 2 using namespace std; 3 const int N=1e5+10; 4 struct node{ 5 int to,nex,w; 6 }e[N<<2]; 7 int head[N],n,k,cnt,v[N],d[N],in[N]; 8 long long ans;queue<int>q; 9 void add(int x,int y,int w) 10 { 11 e[++cnt].to=y;e[cnt].nex=head[x];head[x]=cnt;e[cnt].w=w; 12 } 13 bool spfa() 14 { 15 q.push(0);v[0]=1;d[0]=0;in[0]=1; 16 while(!q.empty()) 17 { 18 int x=q.front();q.pop();v[x]=0; 19 for(int i=head[x];i;i=e[i].nex) 20 { 21 int y=e[i].to; 22 if(e[i].w+d[x]<=d[y])continue; 23 d[y]=d[x]+e[i].w;in[y]++; 24 if(in[y]>=n)return 0; 25 if(!v[y]) 26 { 27 q.push(y);v[y]=1; 28 } 29 } 30 } 31 return 1; 32 } 33 int main() 34 { 35 scanf("%d%d",&n,&k); 36 for(int i=1;i<=k;++i) 37 { 38 int x,a,b; 39 scanf("%d%d%d",&x,&a,&b); 40 if(x==1)add(a,b,0),add(b,a,0); 41 else if(x==2)add(a,b,1); 42 else if(x==3)add(b,a,0); 43 else if(x==4)add(b,a,1); 44 else add(a,b,0); 45 } 46 for(int i=n;i;--i)add(0,i,1); 47 if(!spfa())puts("-1"); 48 else{ 49 for(int i=1;i<=n;++i)ans+=d[i]; 50 printf("%lld\n",ans); 51 } 52 return 0; 53 }
转载于:https://www.cnblogs.com/nbwzyzngyl/p/8612777.html
BZOJ2330 SCOI2011糖果相关推荐
- 差分约束 【bzoj2330】[SCOI2011]糖果
/*[bzoj2330][SCOI2011]糖果 2014年3月5日1,2761 Description 幼儿园里有N个小朋友,lxhgww老师现在想要给这些小朋友们分配糖果,要求每个小朋友都要分到糖 ...
- bzoj 2330: [SCOI2011]糖果
2330: [SCOI2011]糖果 Description 幼儿园里有N个小朋友,lxhgww老师现在想要给这些小朋友们分配糖果,要求每个小朋友都要分到糖果.但是小朋友们也有嫉妒心,总是会提出一些要 ...
- SPFA差分约束(bzoj 2330: [SCOI2011]糖果)
2330: [SCOI2011]糖果 Time Limit: 10 Sec Memory Limit: 128 MB Submit: 6355 Solved: 2096 [Submit][Stat ...
- 【差分约束】SCOI2011糖果
P3275 [SCOI2011]糖果 快noip了我还在干什么啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊 来我们看这道题 根据条件建图, 因为求得是最小值, 所以要跑最长路qwq(这是我记住的QAQ ...
- 【bzoj2330】 [SCOI2011]糖果
此题考察差分约束系统,用SPFA求最长路. 构图,边的权值只为0(等于 大于等于 小于等于)或1(大于 小于),dist数组存最长距离,即该小朋友的最少糖果数. 一次SPFA之后,直接输出dis数组总 ...
- 洛谷P3275 [SCOI2011]糖果
题目描述 幼儿园里有\(N\)个小朋友,\(lxhgww\)老师现在想要给这些小朋友们分配糖果,要求每个小朋友都要分到糖果.但是小朋友们也有嫉妒心,总是会提出一些要求,比如小明不希望小红分到的糖果比他 ...
- 【BZOJ 2330】 [SCOI2011]糖果【差分约束】
题目跳转: http://www.lydsy.com/JudgeOnline/problem.php?id=2330 Description 幼儿园里有N个小朋友,lxhgww老师现在想要给这些小朋友 ...
- P3275 [SCOI2011]糖果
emmmm博客补不完喽~~~(其实这是题目链接,但..也确实是事实..) 这题呢,也基本上就是差分约束的模板题了(要是不知道差分约束的话自行百度一下喽~~),实际上这类题目吧,撇开读入,基本都一样,就 ...
- 题解 P3275 【[SCOI2011]糖果】
清深夏令营机考压轴题,对差分约束的认识还是不够深刻,算法写出来了图没建对,/(ㄒoㄒ)/~~ #define inf 0x3f3f3f3f #define ll long long #define v ...
最新文章
- React组件常用设计模式之Render Props
- MFC中的CString.Format及CString,string,char*之间的转换
- Linux 之 Kickstart
- Codeforces #528 Div2 F (1087F) Rock-Paper-Scissors Champion 树状数组+set
- oracle某个存过的执行时间,java – 为什么oracle存储过程的执行时间会大大增加,具体取决于它的执行方式?...
- 常见Java错误的十大列表(前100名!)
- 【Ubuntu】Ubuntu16.04安装 搜狗输入法 史上最详细
- python为什么closed_为什么python类的函数被调用两次[关闭](Why a function of python class is called twice [closed])...
- 关于config_site.h文件【译】
- PyCharm中脚本文件无法识别相对路径
- iphone开发每日一练【2011-10-21】
- GetFlashInfo V7.5_u盘芯片检测工具
- 一致性协议和共识算法
- Week 10. 第189-204题
- vue 移动端进入页面自动弹出软键盘
- Spring Cloud项目是如何读取bootstrap.properties文件的?
- 什么是数据库?数据库有什么作用?
- Systemd中环境变量设置
- 自己构建iSCSI磁盘阵列
- R语言ggplot2可视化:使用ggpubr包的ggdensity函数可视化密度图、使用scale_x_continuous函数指定X轴坐标轴的取值范围(起始值和终止值)
热门文章
- win10右键闪退到桌面_WIN10设置闪退,桌面右键个性化显示设置等均无效
- 【Pytorch神经网络理论篇】 18 循环神经网络结构:LSTM结构+双向RNN结构
- lgg6 android 9,LG G6的18:9屏幕用起来到底是什么样
- 一、Java Web——JDBC快速入门(详解)
- 读写Excel 用 xlsxwriter,openpyxl 更灵活
- 天池在线编程 2020国庆八天乐 - 6. 山谷序列(DP)
- K 近邻法(K-Nearest Neighbor, K-NN)
- LeetCode 98. 验证二叉搜索树(中序遍历)
- python列表appendtext_python-默认文本以及列表textvariable Entry小部...
- ole db 错误 通讯链接失败_西门子PLC1200的S7通讯(同一项目下)--GET接收指令