博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UVA 11478(差分约束 + 二分)
阅读量:6593 次
发布时间:2019-06-24

本文共 952 字,大约阅读时间需要 3 分钟。

 

题意:

给定一个有向图,每条边都有一个权值,每次你可以选择一个结点和一个整数的,把所有以v为终点的边的权值减去d,

把所有以v为起点的边的权值加上d

最后要让所有边的权的最小值非负且尽量大

代码

#include
#include
#include
#include
#include
#include
using namespace std;const int N = 1e3;const int inf = 0x3f3f3f3f;int dist[N],inq[N],cnt[N];struct node{ int v,w; node(int v,int w):v(v),w(w) {};};vector
G[N];void init(int n){ for(int i = 0; i<=n; i++) G[i].clear();}bool spfa(int n){ queue
q; q.push(0); memset(inq,0,sizeof(inq)); memset(cnt,0,sizeof(cnt)); memset(dist,inf,sizeof(dist)); dist[0] = 0; inq[0] = 1; cnt[0] = 1; while(!q.empty()) { int u = q.front(); q.pop(); inq[u] = 0; for(int i = 0; i
dist[u] + w) { dist[v] = dist[u] + w; if(!inq[v]) q.push(v),inq[v] = 1; if(++cnt[v]>n) return true; } } } return false;}bool test(int mid,int n){ for(int i = 1; i<=n; i++) for(int j = 0; j

 

转载于:https://www.cnblogs.com/jiachinzhao/p/4937583.html

你可能感兴趣的文章
oracle中的trunc函数操作
查看>>
杂牌蓝牙在2003系统使用新驱动的破解方法!
查看>>
EventCache表太大, 怎么办?
查看>>
Top 10 mistakes in Eclipse Plug-in Development
查看>>
Directx教程(23) 简单的光照模型(2)
查看>>
使用sphinx来创建文档
查看>>
Java 并发性和多线程
查看>>
IE6下frameset横向滚动条BUG
查看>>
Python线程专题9:线程终止与挂起、实用工具函数
查看>>
用ASP.NET Core 2.1 建立规范的 REST API -- 翻页/排序/过滤等
查看>>
哈默尔的核心竞争力--《可以量化的管理学》
查看>>
Unity中关于作用力方式ForceMode的功能注解
查看>>
view生命周期的一个找父类的控件的方法
查看>>
今天晚上完成期中考试的视频
查看>>
物理读之LRU(最近最少被使用)的深入解析
查看>>
写给将要毕业的学弟学妹们的感言
查看>>
mybatis-ehcache 用法配置备忘
查看>>
Python2.7升级到3.0 HTMLTestrunner报错解决方法
查看>>
Redis介绍以及安装(Linux)
查看>>
FreeBSD下php-mbstring的安装
查看>>