Sample Input

3 1
1 10
2 10
10 3
2 3 1000

Sample Output

13

最小割,把模块看做点,建源点s和汇点t,以下(a,b,c)表示从a向b连一条容量为c的边
记在核A上的执行的模块集合为S,在核B上的执行的模块集合为T,花费的总和为

对于,这是该模块在A核花费的费用,连一条(i,t,Ai)的边

对于,这是该模块在A核花费的费用,连一条(s,i,Bi)的边

对于,这是ai模块在A核,bi模块在B核的费用,连一条(ai,bi,wi)的边

对于,这是ai模块在B核,bi模块在A核的费用,连一条(bi,ai,wi)的边
#include<iostream>
#include<cstdio>
#include<queue>
#include<cstring>
using namespace std;
const int INF=;
int r,c,d;int n,m;
struct data{
int next,to,cap;
}g[];
int iter[],h[],level[],k=,head,tail,q[];
inline int read(){
int x; bool f; char c;
for (f=; (c=getchar())<''||c>''; f=c=='-');
for (x=c-''; (c=getchar())>=''&&c<=''; x=(x<<)+(x<<)+c-'');
return f?-x:x;
}
void add(int from,int to,int cap)
{
g[++k].next=h[from];h[from]=k;g[k].to=to;g[k].cap=cap;
g[++k].next=h[to];h[to]=k;g[k].to=from;g[k].cap=;
}
void bfs(int s)
{
memset(level,,sizeof(level));
head=tail=;q[tail++]=s;level[s]=;
while(head!=tail)
{
int u=q[head++];
for(int i=h[u];i;i=g[i].next)
{
if(!level[g[i].to]&&g[i].cap)
{
level[g[i].to]=level[u]+;q[tail++]=g[i].to;
}
}
} }
int dfs(int u,int t,int f)
{
if(u==t)return f;
int used=,w;
for(int &i=iter[u];i;i=g[i].next)
{
if(g[i].cap&&level[g[i].to]==level[u]+)
{
w=f-used;w=dfs(g[i].to,t,min(w,g[i].cap));
if(w)
{
g[i].cap-=w;g[i^].cap+=w;used+=w;if(used==f)return f;
}
}
}
return used;
}
int dinic(int s,int t)
{
int flow=;
for(;;)
{
for(int i=;i<=n+;i++)iter[i]=h[i];
bfs(s);if(!level[t])return flow;
flow+=dfs(s,t,INF);
}
}
int main()
{
n=read();m=read();int S=,T=n+;
for(int i=;i<=n;i++)
{
int a=read(),b=read();
add(S,i,b);add(i,T,a);
}
for(int i=;i<=m;i++)
{
int a=read(),b=read(),w=read();
add(a,b,w);add(b,a,w);
}
printf("%d",dinic(S,T));
return ;
}

 

[poj_3469]多核CPU的更多相关文章

  1. linux top命令查看内存及多核CPU的使用讲述

    查看多核CPU命令 mpstat -P ALL  和  sar -P ALL 说明:sar -P ALL > aaa.txt   重定向输出内容到文件 aaa.txt top命令 经常用来监控l ...

  2. paip.提升性能--多核cpu中的java/.net/php/c++编程

    paip.提升性能--多核cpu中的java/.net/php/c++编程 作者Attilax  艾龙,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http ...

  3. linux多核cpu下的负载查看

    linux下使用top命令或uptime命令 单核cpu下,负载超过0.7即意味着瓶颈,多核cpu下按核数*0.7计算负载 如2核,1.4可能即意味着负载较吃力了 查看核数 grep 'model n ...

  4. 记录一个多核CPU负载不均衡问题(动态绑定进程到指定cpu:taskset -pc $CPU $PID)

    昨晚和一位读者朋友讨论了一个问题:在一台多核 CPU 的 Web 服务器上,存在负载不均衡问题,其中 CPU0 的负载明显高于其它 CPUx,进一步调查表明 PHP-FPM 的嫌疑很大.话说以前我曾经 ...

  5. <转>如何利用多核CPU来加速你的Linux命令 — awk, sed, bzip2, grep, wc等

    原文链接:http://www.vaikan.com/use-multiple-cpu-cores-with-your-linux-commands/ 你是否曾经有过要计算一个非常大的数据(几百GB) ...

  6. 如何利用多核CPU来加速你的Linux命令

    原文出处: rankfocus   译文出处: 外刊IT评论 你是否曾经有过要计算一个非常大的数据(几百GB)的需求?或在里面搜索,或其它操作——一些无法并行的操作.数据专家们,我是在对你们说.你可能 ...

  7. 浅谈多核CPU、多线程、多进程

    1.CPU发展趋势 核心数目依旧会越来越多,依据摩尔定律,由于单个核心性能提升有着严重的瓶颈问题,普通的桌面PC有望在2017年末2018年初达到24核心(或者16核32线程),我们如何来面对这突如其 ...

  8. 转摘--如何利用多核CPU来加速你的Linux命令 — awk, sed, bzip2, grep, wc等

    http://www.vaikan.com/use-multiple-cpu-cores-with-your-linux-commands/ 你是否曾经有过要计算一个非常大的数据(几百GB)的需求?或 ...

  9. 【转】多核CPU运行模式

    多核CPU运行模式主要有以下三种: •非对称多处理(Asymmetric multiprocessing,AMP)——每个CPU内核运行一个独立的操作系统或同一操作系统的独立实例(instantiat ...

随机推荐

  1. POJ:3061-Subsequence(尺取法模板详解)

    Subsequence Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 18795 Accepted: 8043 Descript ...

  2. Highest Tower 18中南多校第一场H题

    一.题意 给出N个方块,要求给出一个方案,使得1. 所有方块都被使用到(题目数据保证这点) 2.所有方块垒成一个塔,且上面的方块宽度小于下面的方块 3.每个方块只能用一次,可以横着或者竖着. n范围5 ...

  3. Smail 中的一些点

    smali中所有操作都需要经过寄存器, 本地寄存器以v开头, 参数寄存器以p开头, 非static方法中p0是this 没有-object后缀的操作指令表示操作的对象是基本类型 invoke-dire ...

  4. Centos7 grep命令简介

    grep 是一个最初用于 Unix 操作系统的命令行工具.在给出文件列表或标准输入后,grep会对匹配一个或多个正则表达式的文本进行搜索,并只输出匹配(或者不匹配)的行或文本. grep 可根据提供的 ...

  5. (D)spring boot使用注解类代替xml配置实例化bean

    bean经常需要被实例化,最常见的就是new一个呗,Bean bean = new Bean(),方便好用还快捷. 然而在我们刚开始学习写i项目的时候却发现,new不好用哦,并且也不报错,根本不知道怎 ...

  6. RegisterWindowMessage

    RegisterWindowMessage function   Defines a new window message that is guaranteed to be unique throug ...

  7. Vbs 测试程序二

    这是一段原载于百度百科上的代码,Chaobs转载 原帖已删,就是怕有人用这个恶意程序. 慎用! dim folder,fso,foldername,f,d,dc set fso=createobjec ...

  8. 【vim环境配置】在centos6.4上配置vim的一些零碎记录

    上一篇日志已经step by step地实录了如何在本机mac上配置vim开发环境已经各种插件. 有了一定经验之后,开始在实验室远程server上centos6.4的环境下配置vim环境. 这台机器是 ...

  9. ueditor搭建图片服务器

    最近用使用富文本编辑器,之前一直使用kindeditor和eWebEditor来着,有同事给推荐说使用百度推出的Ueditor,所以咯,自己新项目就将它引进来了,这里说一下心得, 说实话,Uedito ...

  10. 第三方库的安装:Pangolin

    Pangolin: 一款开源的OPENGL显示库,可以用来视频显示.而且开发容易. 代码我们可以从Github 进行下载:https://github.com/stevenlovegrove/Pang ...