第一次写Dinic 然后贴一下 最基础的网络流问题 嘎嘎:

#include <iostream>
#include<cstdio>
#include<string.h>
#include<queue>
using namespace std;
const int M=205;
__int64 map[M][M];
int n,m,dist[M];
queue<int>q;
void readdate()
{
__int64 i,a,b,c;
for(i=0;i<n;i++)
{
scanf("%I64d%I64d%I64d",&a,&b,&c);
map[a][b]+=c;
}
}
bool BFS()
{
while(!q.empty()){q.pop();}
int x,i;
memset(dist,-1,sizeof(dist));
q.push(1);
dist[1]=0;
while(!q.empty())
{
x=q.front();
q.pop();
for(i=1;i<=m;i++)
if(dist[i]<0&&map[x][i]>0)
{
dist[i]=dist[x]+1;
q.push(i);
}
}
if(dist[m]==-1)return 0;
else return 1; }
__int64 min_vual(__int64 a,__int64 b)
{
return a>b?b:a;
}
__int64 find(int a,__int64 low)
{
__int64 aq,i;
if(a==m)return low;
for(i=1;i<=m;i++)
if(dist[a]==dist[i]-1&&map[a][i]>0&&(aq=find(i,min_vual(low,map[a][i]))))
{
map[a][i]-=aq;
map[i][a]+=aq;
return aq;
}
return 0;
}
int main()
{
__int64 temp,ans;
while(scanf("%d%d",&n,&m)==2)
{
ans=0;
memset(map,0,sizeof(map)); readdate();
while(BFS())
{
while((temp=find(1,1<<30)))ans+=temp;
}
printf("%I64d\n",ans);
} return 0;
}

HDU1530 最大流问题的更多相关文章

  1. 网络流-最大流问题 ISAP 算法解释(转自Renfei Song's Blog)

    网络流-最大流问题 ISAP 算法解释 August 7, 2013 / 编程指南 ISAP 是图论求最大流的算法之一,它很好的平衡了运行时间和程序复杂度之间的关系,因此非常常用. 约定 我们使用邻接 ...

  2. 网络最大流问题之Ford-Fulkerson算法原理详解

    前言 最大流问题是网络优化中典型的问题,用形象的语言来描述就是在满足容量约束的前提下将尽可能多的流从源节点(始点)到汇节点(终点).解决此问题的经典方法很多,本文介绍广为人熟知的Ford-Fulker ...

  3. 最大流问题Ford-Fulkerson方法(转)

    本篇主要讲解最大流问题的Ford-Fulkerson解法.可是说这是一种方法,而不是算法,因为它包含具有不同运行时间的几种实现.该方法依赖于三种重要思想:残留网络,增广路径和割.本文将会详细介绍这些内 ...

  4. [图论]最大流问题(Maximum flow)的定义

    首先定义网络(network)N =(V,E), V表示顶点(Vertices)集合, E表示边(Edges)集合. s,t是V中的两个顶点,分别表示网络N中的源点(source)和汇点(sink). ...

  5. 省赛在即!最大流问题回顾学习!!DInic

    Dinic是很好的算法,但是我还是从ek算法复习起步 面对最大流问题,印象最深的就是反向边的思想,他给我们提供了反悔的机会,其实现在放到实际上来想,可以相当于两边的水都流了这条边,只是方向不一样,放到 ...

  6. 最大团 HDU-1530

    传送门: 洛谷 Vjudge    (题目略有不同) 题目描述 • 给定一个图 tt = (V, E) • 求一个点集 S ,使得对于任意 x ≠ y ∈ S ,x 和 y 都有一条边 • |V | ...

  7. NetworkX系列教程(10)-算法之四:拓扑排序与最大流问题

    小书匠Graph图论 重头戏部分来了,写到这里我感觉得仔细认真点了,可能在NetworkX中,实现某些算法就一句话的事,但是这个算法是做什么的,用在什么地方,原理是怎么样的,不清除,所以,我决定先把图 ...

  8. 【python代码】 最大流问题+最小花费问题+python(ortool库)实现

    目录 基本概念 图 邻接矩阵 最大流问题 python解决最大流问题 python解决最大流最小费用问题 基本概念 图 定义: 图G(V,E)是指一个二元组(V(G),E(G)),其中: V(G)={ ...

  9. poj3422 Kaka's Matrix Travels(最小费用最大流问题)

    /* poj3422 Kaka's Matrix Travels 不知道 k次 dp做为什么不对??? 看了大牛的代码,才知道还可以这样做! 开始没有理解将a 和 a‘ 之间建立怎样的两条边,导致程序 ...

随机推荐

  1. RHEL6.2的安装文档

    1 Installing RHEL 6.2 1.1 开始安装 选择“Install or upgrade an existing system”: 1.2 光盘检测 选择“Skip”跳过安装介质的检查 ...

  2. es修改指定的field(partial update)

    PUT /index/type/id 创建文档&替换文档,就是一样的语法一般对应到应用程序中,每次的执行流程基本是这样的:1.应用程序发起一个get请求,获取到document,展示到前台界面 ...

  3. 10.6-uC/OS-III内部任务(统计任务 OS_StatTask())

    1.这个任务能够统计总的CPU使用率(0到100%),每个任务的CPU使用率( 0到100%),每个任务的堆栈使用量. 2.统计任务在uC/OS-III中是可选的,当设置OS_CFG.H中的OS_CF ...

  4. 代码控如何实现配置fiddler

    很多小哥哥总觉得测试点点点很low,总想码代码.那么fiddler除了一些手动设置外,还可以进行丰富的代码编写,用以完成任务. 打开fiddler,工具栏选择Rules->Customize R ...

  5. OC仿支付宝输入UITextField输入车牌号

    效果图,如果使用,出现任何问题请告知,或者下方留言,我好以及改正 .h文件: #import <UIKit/UIKit.h> @interface LicenseKeyBoardView ...

  6. NYOJ 开心的小明

    #include<iostream> #include<stdio.h> #include<string.h> #include<queue> #inc ...

  7. C语言ini格式配置文件的读写

    依赖的类 /*1 utils.h *# A variety of utility functions. *# *# Some of the functions are duplicates of we ...

  8. https://github.com/Lushenggang/show-pdf在线浏览pdf文件在线浏览pdf文件

    在线浏览pdf文件 https://github.com/Lushenggang/show-pdf https://github.com/Lushenggang/show-pdf

  9. sap 查看自己代码的结构

    1:进入系统X3C:然后输入T-CODE   bsp_wd_cmpwb

  10. 什么是AOP面向切面编程

    什么是AOP 连接地址:http://blog.csdn.net/moreevan/article/details/11977115/ AOP(Aspect-OrientedProgramming,面 ...