bzoj1449————2016——3——14
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1449
题目简述:
Description

Input

Output
Sample Input
1 0 2 1
1 1 10 1
0 1 3 3
1 2
2 3
3 1
Sample Output
#include<iostream>
#include<cstring>
#include<cstdio>
#define inf 0x7fffffff
#define maxn 1000000
int pre[maxn],v[maxn],cost[maxn],cap[maxn],lis[maxn];
int lose[],win[],in[],c[],d[],dis[],now[],sla[],mark[];
bool vis[];
int n,m,s,t,tot,ans;
using namespace std;
void ins(int a, int b, int c, int d)
{
tot++; pre[tot]=now[a]; now[a]=tot; v[tot]=b; cost[tot]=d; cap[tot]=c;
}
void insert(int a, int b, int c, int d)
{
ins(a,b,c,d); ins(b,a,,-d);
}
bool spfa()
{
int head=,tail=;
for (int i=s; i<=t; i++) dis[i]=inf;
memset(mark,,sizeof(mark));
lis[]=t; dis[t]=; mark[t]=;
while (head!=tail)
{
int x=lis[head]; mark[x]=; head++;
if(head==)head=;
for (int i=now[x]; i; i=pre[i])
{
if (dis[x]+cost[i^]<dis[v[i]] && cap[i^])
{
dis[v[i]]=dis[x]+cost[i^];
if (!mark[v[i]])
{
mark[v[i]]=;
tail++;
lis[tail]=v[i];
if(tail==)tail=;
}
}
}
}
// printf("%d\n",dis[s]);
if (dis[s]!=inf ) return true; else return false;
}
int dfs(int x, int f)
{
mark[x]=;
if (x==t) return f;
int w,used=;
for (int i=now[x]; i; i=pre[i])
{
if (!mark[v[i]] && cap[i] && dis[x]-cost[i]==dis[v[i]])
{
w=dfs(v[i],min(f-used,cap[i]));
cap[i]-=w; cap[i^]+=w;
ans+=w*cost[i];
used+=w; if (used==f) return f;
}
}
return used;
}
void zkw()
{
while(spfa())
{
mark[t]=;
while(mark[t])
{
memset(mark,,sizeof(mark));
dfs(s,inf);
}
}
}
int main()
{
scanf("%d%d",&n,&m); tot=; ans=;
for (int i=; i<=n; i++)
scanf("%d%d%d%d",&win[i],&lose[i],&c[i],&d[i]);
s=; t=n+m+;
for (int i=; i<=m; i++)
{
int u,v;
insert(s,i,,);
scanf("%d%d",&u,&v);
insert(i,u+m,,);
insert(i,v+m,,);
in[u]++; in[v]++;
}
for (int i=; i<=n; i++)
{
lose[i]+=in[i];
}
ans=;
for(int i=;i<=n;i++)
ans+=win[i]*win[i]*c[i]+lose[i]*lose[i]*d[i];
for (int i=; i<=n; i++)
for (int j=; j<=in[i]; j++)
{
//insert(i+m,t,1,c[i]*(2*win[i]+2*j-1)-d[i]*(2*lose[i]-2*j+1));
insert(i+m,t,,*c[i]*win[i]+c[i]+d[i]-*d[i]*lose[i]);
win[i]++; lose[i]--;
}
//printf("%d\n",ans);
zkw();
printf("%d\n",ans);
return ;
}
bzoj1449————2016——3——14的更多相关文章
- 2016.09.14,英语,《Using English at Work》全书笔记
半个月时间,听完了ESLPod出品的<Using English at Work>,笔记和自己听的时候的备注列在下面.准备把每个语音里的快速阅读部分截取出来,放在手机里反复听. 下一阶段把 ...
- Murano Weekly Meeting 2016.06.14
Meeting time: 2016.June.14 1:00~2:00 Chairperson: Kirill Zaitsev, from Mirantis Meeting summary: 1. ...
- 2016.10.14,英语,《American Accent Training》
这本书是讲述美语发音训练的.已经看了一段时间了,决定向周叶学习,记录读书笔记.计划每天花半个小时,学习3节左右的音频(按照CD TRACK),并完成训练. CD1 Track1 What is Acc ...
- nginx学习记录/2016.11.14
nginx(engine X)是一个高性能的web服务器和反向代理服务器以及电子邮件代理服务器 由俄罗斯的程序设计师Igor Sysoev所开发 nginx+tomcat实现负载均衡 参考地址:htt ...
- 2016.11.14测试 长乐一中2014NOIP复赛模拟题 第一题。
1.正确答案 [题目描述] 小H与小Y刚刚参加完UOIP外卡组的初赛,就迫不及待的跑出考场对答案. "吔,我的答案和你都不一样!",小Y说道,"我们去找神犇们问答案吧&q ...
- 2016.8.14安装myplayer心得
安装mplayer时,我有两个os是not found状态,我在其他地方找到后 which mplayer,找到mplayer的配置界面,找到not found的部分,并且从usr/lib中找到相应的 ...
- 2016.9.14 JavaScript入门之七面向对象和函数
1.JavaScript中的变量,可以是对象,具有相应的属性: 2.我们也能够使用构造函数创建对象.构造函数的函数给出了一个大写的名称,以使它清楚地表明它是一个构造函数. 在构造函数中,这个变量是指由 ...
- 2016.8.14 HTML5重要标签以及属性学习
1.响应网格系统,这使得它很容易把元素放在行,并指定每个元素的相对宽度 . 要注意的是: 在使用网格布局系统之前,要不把布局的元素都添加到同一个<div>中,而且这个<div> ...
- 2016.8.14 HTML5重要标签及其属性学习
1.移动端的CSS: 一般需要引入下面的外部样式表: <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/ ...
随机推荐
- asp 随机生成字符
<%function rndNumLetters(num) randomize dim num0,num1,num2,num3,pass if num = "" or not ...
- WiresShark 图解教程1
Wireshark是世界上最流行的网络分析工具.这个强大的工具可以捕捉网络中的数据,并为用户提供关于网络和上层协议的各种信息.与很多其他网络工具一样,Wireshark也使用pcap network ...
- win7 系统保留分区 BCDedit
系统保留分区简介编辑 “系统保留”分区示意图 Windows Vista/7出于安全考虑,在新装Windows Vista/7系统过程中,如果利用光盘的分区工具给硬盘分区时,系统默认的将一部分(100 ...
- 黄聪:基于Asp.net的CMS系统We7架设实验(环境WIN7,SQL2005,.NET3.5)(初学者参考贴)
http://www.cnblogs.com/huangcong/archive/2010/03/30/1700348.html
- 第三方框架ViewPagerIndicator引入到Android Studio的方法总结
原创文章,转载请注明出处http://www.cnblogs.com/baipengzhan/p/6286619.html 第三方框架ViewPagerIndicator实现的效果比较好,但当我们从G ...
- Chapter 1 First Sight——2
"Bella," my mom said to me — the last of a thousand times — before I got on the plane. &qu ...
- Jackson基础笔记
具体内容待完善......手抖,发错了! 一.基本使用 1. bean->jsonStr 2. jsonStr->bean 二.注解使用 三.复杂对象转换 四.其他细节 读取json文本.
- 基于Spring的异步系统实现方案
一般的实现方案 发送异步消息所使用的工具类: import java.util.Date; import javax.jms.Destination; import javax.jms.JMSExce ...
- The 2014 ACMICPC Asia Regional Xian
2题继续遗憾收场,每次都是只差最后一步.这一场却是之前那么多场中感觉距离奖牌最近的时候.好好总结一下经验教训,复盘之后好好准备下一场北京的最后一战吧. 一开始的状态非常不错,10分钟跟榜完成1A,第二 ...
- EM算法--第一篇
在统计计算中,最大期望(EM)算法是在概率(probabilistic)模型中寻找参数最大似然估计或者最大后验估计的算法,其中概率模型依赖于无法观测的隐藏变量(LatentVariable).最大期望 ...