- 网络最大流中一般增广路算法(标号法)
都是一家人
数据结构-算法练习
网络最大流主要有两大类求解方法:增广路算法和预流推进算法一般增广路算法:主要分为初始流为零流和初始流为非零流的情况!后者在标号的时候注意一条边是正向连接还是反向连接;若是反向的连接,那么在调整的时候是减去,若为正向那么在调整的时候是加上!这里就poj1149为例写一道网络流中用标号法求解一般增广路的方法;题目链接:http://poj.org/problem?id=1149题目的关键在于如何构造一
- POJ1149 PIGS
Monster__Yi
图论网络流
题意:M(1
#include
#include
#include
usingnamespacestd;
constintN=105,M=300000,MM=1005,inf=0x3fffffff;
intn,m,s,t,x,y,e,w[MM],vis[MM],hd[N],nxt[M],f[M],to[M],ch[N];
vectorv[MM];
voidadd(intx,inty,intz)
- POJ1149 PIGS
H992109898
一,原题链接:http://poj.org/problem?id=1149二.题目大意:迈克要卖猪,顾客一个一个地来,每个顾客有某几个猪圈的钥匙。迈克可以调换猪圈里的猪(当然是在第一个顾客打开猪圈门之后)。迈克知道顾客来的顺序,知道顾客有什么钥匙。求迈克卖出猪最多数量。三.思路:建一个顶点数为:顾客数+2的图,然后以0为起点,每个猪圈的第一个打开的人直接与起点相连,然后容量为开始猪数量(如果有重边
- [POJ 1149]PIGS[最大流][建图]
CatGlory
建模网络流
题目链接:[POJ1149]PIGS[最大流][建图]题意分析:有M个猪圈,每个猪圈有一定数量的猪,但是米尔科没有打开猪圈的钥匙,钥匙在顾客的手上。总共N个顾客,每个顾客拥有某些猪圈的钥匙,每次到来一个顾客,他都可以从他可以打开的猪圈选猪,需要选need只。每次选完后,米尔科可以选择把这些猪分配到任意一个打开的猪圈里面,然后关上猪圈。现在问:怎么安排可以使得猪被卖的最多,最多多少只?解题思路:每个
- poj1149 PIGS(最大流+建模)
KIJamesQi
最大流
这题重在怎建图。有n个顾客和m个猪圈,每个猪圈里面可以容纳无穷多的猪,但是开始的数量是一定的。顾客与汇点连边容量为其需求,猪圈与源点连边,容量为其初始值。然后就是对应的猪圈与顾客建边,容量为inf,这些都好像到。因为顾客有先后顺序,且某时刻某些猪圈打开了的话里面的猪的数量是可以调的(比如1,2,3这三个猪圈此时是开着门的,那么猪可以在这三个猪圈里面流动,但是总量是不变的)。如果前面的顾客x与后面的
- poj1149 最大流好题 难在建图 好题
xingxing1024
这个题的意思是有M个猪圈,N个人,每个人按次序可以访问一些猪圈并可以买走一定数量的猪,并且一个人用自己所拥有的猪圈钥匙打开猪圈后这些猪可以重新分配到已经打开的猪圈中,问你可以买的最多的猪是多少个?强烈推荐看这个博文,非常感谢博主http://ycool.com/post/zhhrrm6
代码如下:
- poj1149 PIGS-Dinic模板
zz_ylolita
dinic
这道题的建图比较有趣,流入猪圈的和流入超级汇点的是常规的建法,然后根据题目性质,除了在猪圈和有相应钥匙的人之间连边,同时也在依次同一个猪圈买猪的人之间依次连边,因为这样可以保证上一个人打开的猪圈剩下的猪可以流向下一个人,对公共的猪圈而言,是剩下的猪流向下一个人。这样就符合题意了。加当前弧优化的Dinic&i居然是参变量可以让等于它的变量的值跟着改。#include
#include
#includ
- poj1149 PIGS
AaronGZK
poj网络流
PIGSTimeLimit: 1000MS MemoryLimit: 10000KTotalSubmissions: 19068 Accepted: 8697DescriptionMirkoworksonapigfarmthatconsistsofMlockedpig-housesandMirkocan'tunlockanypighousebecausehedoesn'thavethekeys.C
- [POJ1149 Pigs]
pig
[大意]:有m个猪圈每个中有一定数目的猪但无容量上限,n个顾客么个顾客需要一定数目的猪。每个顾客可以打开特定的猪圈从中取猪,此时这几个猪圈里的猪可以互相流动。问最多可以卖出多少头猪。
[关键字]:网络流
//==============================================================================================
- poj1149
poj
题意: 有 M 个猪圈,每个猪圈里初始时有若干头猪。一开始所有猪圈都是关闭的。依次来了 N 个顾客,每个顾客分别会打开指定的几个猪圈,从中买若干头猪。每个顾客分别都有他能够买的数量的上限。每个顾客走后,他打开的那些猪圈中的猪,都可以被任意地调换到其它开着的猪圈里,然后所有猪圈重新关上。
分析: 此题是网络流,网络流里经典的构图题。将顾客看作除源和汇以外的节点,源和每个猪圈的第一个顾客连边,边的权
- POJ1149 PIGS
pig
想了好久啊。。。(#-.-)
开始想到m*n个点的构图,明显超时,于是考虑压缩节点个数
我们发现每个猪圈最后被有且只有一个人调整,于是想到对于一个人,连接他能调整的每个猪圈的上一个控制人。(不懂可以开代码 (・(ェ)・) )
/**
* Problem:POJ1149
* Author:Shun Yao
* Time:2013.9.13
- poj1149最大流
poj
#include <cstdio> #include <cstring> #include <algorithm> #include <climits> #include <string> #include <iostream> #include <map> #include <cstdlib> #i
- POJ1149 PIGS (最大流)
qq_26564523
pigpoj网络流最大流
题目链接DescriptionMirkoworksonapigfarmthatconsistsofMlockedpig-housesandMirkocan'tunlockanypighousebecausehedoesn'thavethekeys.Customerscometothefarmoneafteranother.Eachofthemhaskeystosomepig-housesandwa
- poj1149 pigs 網絡流
ocgcn2010
PIGSTimeLimit: 1000MS MemoryLimit: 10000KTotalSubmissions: 17680 Accepted: 8015DescriptionMirkoworksonapigfarmthatconsistsofMlockedpig-housesandMirkocan'tunlockanypighousebecausehedoesn'thavethekeys.C
- POJ1149 PIGS 【最大流】
u012846486
POJ1149
PIGSTimeLimit: 1000MS MemoryLimit: 10000KTotalSubmissions: 16555 Accepted: 7416DescriptionMirkoworksonapigfarmthatconsistsofMlockedpig-housesandMirkocan'tunlockanypighousebecausehedoesn'thavethekeys.C
- Poj1149 PIGS (经典网络流)
ygqwan
顾客买猪问题建图的方法:当第i个猪圈第顾客K(不是每一个顾客都去打开每一个猪圈)一次被打开的时候,就从超级源点连一条到顾客K的边,权值为猪圈i里面猪的数量当第i个猪圈不是是第一次被打开的时候,那么就将上一个打开这个猪圈的人连到当前顾客,权值为正无穷将所有顾客都连一一条边倒超级汇点,权值是顾客想买猪的数量//SPA
#include
#include
#include
#include
#defi
- poj1149 PIGS
HELLO_THERE
PIGSTimeLimit:1000MSMemoryLimit:10000KTotalSubmissions:13677Accepted:6044DescriptionMirkoworksonapigfarmthatconsistsofMlockedpig-housesandMirkocan'tunlockanypighousebecausehedoesn'thavethekeys.Custome
- POJ1149
ashuai81
•每个顾客分别用一个结点来表示。•对于每个猪圈的第一个顾客,从源点向他连一条边,容量就是该猪圈里的猪的初始数量。如果从源点到一名顾客有多条边,则可以把它们合并成一条,容量相加。•对于每个猪圈,假设有n个顾客打开过它,则对所有整数i∈[1,n),从该猪圈的第i个顾客向第i+1个顾客连一条边,容量为∞。•从各个顾客到汇点各有一条边,容量是各个顾客能买的数量上限。 //768K32MSG++1582
- poj1149 PIGS 神奇的建图 最大流
luyuncheng
建图详细解释请看转发的博文代码:#include
#include
#include
#include
usingnamespacestd;
#defineMAXN200
#defineMAXE5000
#defineINF0xfffff
intne,nv,tmp,s,t,index;
structEdge{
intnext,pair,v;
intcap,fLow;
}edge[MAXE];
in
- poj1149 PIGS 最大流 神奇的建图
luyuncheng
转自http://imlazy.ycool.com/post.2059102.html 这道题目的大意是这样的:有M个猪圈(M≤1000),每个猪圈里初始时有若干头猪。一开始所有猪圈都是关闭的。依次来了N个顾客(N≤100),每个顾客分别会打开指定的几个猪圈,从中买若干头猪。每个顾客分别都有他能够买的数量的上限。每个顾客走后,他打开的那些猪圈中的猪,都可以被任意地调换到其它开着的猪圈里,然后所有猪
- poj1149 - PIGS
wangjian8006
c工作pigSAP
想看更多的解题报告:http://blog.csdn.net/wangjian8006/article/details/7870410 转载请注明出处:http://blog.csdn.net/wangjian8006题目大意:有N个顾客,有M个猪圈,每个猪圈有一定的猪,在开
- POJ1149 PIGS 题解
shahdza
算法网络
PKU1149,PIGS,构造网络流模型时,要注意合并节点和边ps:本解题报告摘自 (点击上一行) 这道题目的大意是这样的:有M个猪圈(M≤1000),每个猪圈里初始时有若干头猪。一开始所有猪圈都是关闭的。依次来了N个顾客(N≤100),每个顾客分别会打开指定的几个猪圈,从中买若干头猪。每个顾客分别都有他能够买的数量的上限。每个顾客走后,他打开的那些猪圈中的猪,都可以被任意地调换到其它开
- poj1149(pigs)
ysjjovo
cstructRESTSAPGraphBuild
一、.这么犀利的建图第一次见到,不解释。就用这个题写一下模板。参考资料:http://imlazy.ycool.com/post.2059102.html二、代码1.(dinic+邻接表)#include
#include
#include
#include
#include
usingnamespacestd;
//注意数据和内存的越界!
//尤其是memset()上
#defineN1010
- poj1149
Non_Cease
EK模板,本题关键在于构图。将顾客作为结点,构图如下:1.取超级源点和超级汇点;2.当猪圈被第一次打开时,在源点与当前顾客之间连接一条边,容量为该猪圈的猪的头数;3.当某个猪圈不是被第一次打开时,在上一个打开该猪圈的顾客与当前打开该猪圈的顾客之间连接一条边,容量为无穷大;4.在每个顾客与源点之间连接一条边,容量为该顾客要买猪的头数。代码如下://47ms
#include
#include
usi
- poj1149 PIGS
zhang360896270
网络
记得某位大牛说过网络流如果建模都是别人告诉你的,那么这个题目就废了。。。ORZ。。以后关于网络流就只说建模方法吧题目大意是给你M个猪舍,N个买猪的人,每个人有k把钥匙可以打开k个不同的猪舍,每个人要买一定数量的猪,买完后,此次打开的猪舍里的猪可以相互流动建立新的源点和汇点,源点指向第一个打开第i个猪笼的人,容量为第i个猪笼的初始值,然后以每个人为节点指向汇点,容量为买下的猪数量,人与人相互之间连
- POJ1149最大网络流
zhuichao001
这道题目的大意是这样的:有M个猪圈(M≤1000),每个猪圈里初始时有若干头猪。一开始所有猪圈都是关闭的。依次来了N个顾客(N≤100),每个顾客分别会打开指定的几个猪圈,从中买若干头猪。每个顾客分别都有他能够买的数量的上限。每个顾客走后,他打开的那些猪圈中的猪,都可以被任意地调换到其它开着的猪圈里,然后所有猪圈重新关上。 问总共最多能卖出多少头猪。 举个例子来说。有3个猪圈,初始时分别
- POJ 1149 最大流
Icyflame
POJ1149最大流一、题目描述DescriptionMirkoworksonapigfarmthatconsistsofMlockedpig-housesandMirkocan'tunlockanypighousebecausehedoesn'thavethekeys.Customerscometothefarmoneafteranother.Eachofthemhaskeystosomepig
- java线程的无限循环和退出
3213213333332132
java
最近想写一个游戏,然后碰到有关线程的问题,网上查了好多资料都没满足。
突然想起了前段时间看的有关线程的视频,于是信手拈来写了一个线程的代码片段。
希望帮助刚学java线程的童鞋
package thread;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date
- tomcat 容器
BlueSkator
tomcatWebservlet
Tomcat的组成部分 1、server
A Server element represents the entire Catalina servlet container. (Singleton) 2、service
service包括多个connector以及一个engine,其职责为处理由connector获得的客户请求。
3、connector
一个connector
- php递归,静态变量,匿名函数使用
dcj3sjt126com
PHP递归函数匿名函数静态变量引用传参
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Current To-Do List</title>
</head>
<body>
- 属性颜色字体变化
周华华
JavaScript
function changSize(className){
var diva=byId("fot")
diva.className=className;
}
</script>
<style type="text/css">
.max{
background: #900;
color:#039;
- 将properties内容放置到map中
g21121
properties
代码比较简单:
private static Map<Object, Object> map;
private static Properties p;
static {
//读取properties文件
InputStream is = XXX.class.getClassLoader().getResourceAsStream("xxx.properti
- [简单]拼接字符串
53873039oycg
字符串
工作中遇到需要从Map里面取值拼接字符串的情况,自己写了个,不是很好,欢迎提出更优雅的写法,代码如下:
import java.util.HashMap;
import java.uti
- Struts2学习
云端月影
最近开始关注struts2的新特性,从这个版本开始,Struts开始使用convention-plugin代替codebehind-plugin来实现struts的零配置。
配置文件精简了,的确是简便了开发过程,但是,我们熟悉的配置突然disappear了,真是一下很不适应。跟着潮流走吧,看看该怎样来搞定convention-plugin。
使用Convention插件,你需要将其JAR文件放
- Java新手入门的30个基本概念二
aijuans
java新手java 入门
基本概念: 1.OOP中唯一关系的是对象的接口是什么,就像计算机的销售商她不管电源内部结构是怎样的,他只关系能否给你提供电就行了,也就是只要知道can or not而不是how and why.所有的程序是由一定的属性和行为对象组成的,不同的对象的访问通过函数调用来完成,对象间所有的交流都是通过方法调用,通过对封装对象数据,很大限度上提高复用率。 2.OOP中最重要的思想是类,类是模板是蓝图,
- jedis 简单使用
antlove
javarediscachecommandjedis
jedis.RedisOperationCollection.java
package jedis;
import org.apache.log4j.Logger;
import redis.clients.jedis.Jedis;
import java.util.List;
import java.util.Map;
import java.util.Set;
pub
- PL/SQL的函数和包体的基础
百合不是茶
PL/SQL编程函数包体显示包的具体数据包
由于明天举要上课,所以刚刚将代码敲了一遍PL/SQL的函数和包体的实现(单例模式过几天好好的总结下再发出来);以便明天能更好的学习PL/SQL的循环,今天太累了,所以早点睡觉,明天继续PL/SQL总有一天我会将你永远的记载在心里,,,
函数;
函数:PL/SQL中的函数相当于java中的方法;函数有返回值
定义函数的
--输入姓名找到该姓名的年薪
create or re
- Mockito(二)--实例篇
bijian1013
持续集成mockito单元测试
学习了基本知识后,就可以实战了,Mockito的实际使用还是比较麻烦的。因为在实际使用中,最常遇到的就是需要模拟第三方类库的行为。
比如现在有一个类FTPFileTransfer,实现了向FTP传输文件的功能。这个类中使用了a
- 精通Oracle10编程SQL(7)编写控制结构
bijian1013
oracle数据库plsql
/*
*编写控制结构
*/
--条件分支语句
--简单条件判断
DECLARE
v_sal NUMBER(6,2);
BEGIN
select sal into v_sal from emp
where lower(ename)=lower('&name');
if v_sal<2000 then
update emp set
- 【Log4j二】Log4j属性文件配置详解
bit1129
log4j
如下是一个log4j.properties的配置
log4j.rootCategory=INFO, stdout , R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appe
- java集合排序笔记
白糖_
java
public class CollectionDemo implements Serializable,Comparable<CollectionDemo>{
private static final long serialVersionUID = -2958090810811192128L;
private int id;
private String nam
- java导致linux负载过高的定位方法
ronin47
定位java进程ID
可以使用top或ps -ef |grep java
![图片描述][1]
根据进程ID找到最消耗资源的java pid
比如第一步找到的进程ID为5431
执行
top -p 5431 -H
![图片描述][2]
打印java栈信息
$ jstack -l 5431 > 5431.log
在栈信息中定位具体问题
将消耗资源的Java PID转
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
bylijinnan
函数
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class RandNFromRand5 {
/**
题目:给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数。
解法1:
f(k) = (x0-1)*5^0+(x1-
- PL/SQL Developer保存布局
Kai_Ge
近日由于项目需要,数据库从DB2迁移到ORCAL,因此数据库连接客户端选择了PL/SQL Developer。由于软件运用不熟悉,造成了很多麻烦,最主要的就是进入后,左边列表有很多选项,自己删除了一些选项卡,布局很满意了,下次进入后又恢复了以前的布局,很是苦恼。在众多PL/SQL Developer使用技巧中找到如下这段:
&n
- [未来战士计划]超能查派[剧透,慎入]
comsci
计划
非常好看,超能查派,这部电影......为我们这些热爱人工智能的工程技术人员提供一些参考意见和思想........
虽然电影里面的人物形象不是非常的可爱....但是非常的贴近现实生活....
&nbs
- Google Map API V2
dai_lm
google map
以后如果要开发包含google map的程序就更麻烦咯
http://www.cnblogs.com/mengdd/archive/2013/01/01/2841390.html
找到篇不错的文章,大家可以参考一下
http://blog.sina.com.cn/s/blog_c2839d410101jahv.html
1. 创建Android工程
由于v2的key需要G
- java数据计算层的几种解决方法2
datamachine
javasql集算器
2、SQL
SQL/SP/JDBC在这里属于一类,这是老牌的数据计算层,性能和灵活性是它的优势。但随着新情况的不断出现,单纯用SQL已经难以满足需求,比如: JAVA开发规模的扩大,数据量的剧增,复杂计算问题的涌现。虽然SQL得高分的指标不多,但都是权重最高的。
成熟度:5星。最成熟的。
- Linux下Telnet的安装与运行
dcj3sjt126com
linuxtelnet
Linux下Telnet的安装与运行 linux默认是使用SSH服务的 而不安装telnet服务 如果要使用telnet 就必须先安装相应的软件包 即使安装了软件包 默认的设置telnet 服务也是不运行的 需要手工进行设置 如果是redhat9,则在第三张光盘中找到 telnet-server-0.17-25.i386.rpm
- PHP中钩子函数的实现与认识
dcj3sjt126com
PHP
假如有这么一段程序:
function fun(){
fun1();
fun2();
}
首先程序执行完fun1()之后执行fun2()然后fun()结束。
但是,假如我们想对函数做一些变化。比如说,fun是一个解析函数,我们希望后期可以提供丰富的解析函数,而究竟用哪个函数解析,我们希望在配置文件中配置。这个时候就可以发挥钩子的力量了。
我们可以在fu
- EOS中的WorkSpace密码修改
蕃薯耀
修改WorkSpace密码
EOS中BPS的WorkSpace密码修改
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 201
- SpringMVC4零配置--SpringSecurity相关配置【SpringSecurityConfig】
hanqunfeng
SpringSecurity
SpringSecurity的配置相对来说有些复杂,如果是完整的bean配置,则需要配置大量的bean,所以xml配置时使用了命名空间来简化配置,同样,spring为我们提供了一个抽象类WebSecurityConfigurerAdapter和一个注解@EnableWebMvcSecurity,达到同样减少bean配置的目的,如下:
applicationContex
- ie 9 kendo ui中ajax跨域的问题
jackyrong
AJAX跨域
这两天遇到个问题,kendo ui的datagrid,根据json去读取数据,然后前端通过kendo ui的datagrid去渲染,但很奇怪的是,在ie 10,ie 11,chrome,firefox等浏览器中,同样的程序,
浏览起来是没问题的,但把应用放到公网上的一台服务器,
却发现如下情况:
1) ie 9下,不能出现任何数据,但用IE 9浏览器浏览本机的应用,却没任何问题
- 不要让别人笑你不能成为程序员
lampcy
编程程序员
在经历六个月的编程集训之后,我刚刚完成了我的第一次一对一的编码评估。但是事情并没有如我所想的那般顺利。
说实话,我感觉我的脑细胞像被轰炸过一样。
手慢慢地离开键盘,心里很压抑。不禁默默祈祷:一切都会进展顺利的,对吧?至少有些地方我的回答应该是没有遗漏的,是不是?
难道我选择编程真的是一个巨大的错误吗——我真的永远也成不了程序员吗?
我需要一点点安慰。在自我怀疑,不安全感和脆弱等等像龙卷风一
- 马皇后的贤德
nannan408
马皇后不怕朱元璋的坏脾气,并敢理直气壮地吹耳边风。众所周知,朱元璋不喜欢女人干政,他认为“后妃虽母仪天下,然不可使干政事”,因为“宠之太过,则骄恣犯分,上下失序”,因此还特地命人纂述《女诫》,以示警诫。但马皇后是个例外。
有一次,马皇后问朱元璋道:“如今天下老百姓安居乐业了吗?”朱元璋不高兴地回答:“这不是你应该问的。”马皇后振振有词地回敬道:“陛下是天下之父,
- 选择某个属性值最大的那条记录(不仅仅包含指定属性,而是想要什么属性都可以)
Rainbow702
sqlgroup by最大值max最大的那条记录
好久好久不写SQL了,技能退化严重啊!!!
直入主题:
比如我有一张表,file_info,
它有两个属性(但实际不只,我这里只是作说明用):
file_code, file_version
同一个code可能对应多个version
现在,我想针对每一个code,取得它相关的记录中,version 值 最大的那条记录,
SQL如下:
select
*
- VBScript脚本语言
tntxia
VBScript
VBScript 是基于VB的脚本语言。主要用于Asp和Excel的编程。
VB家族语言简介
Visual Basic 6.0
源于BASIC语言。
由微软公司开发的包含协助开发环境的事
- java中枚举类型的使用
xiao1zhao2
javaenum枚举1.5新特性
枚举类型是j2se在1.5引入的新的类型,通过关键字enum来定义,常用来存储一些常量.
1.定义一个简单的枚举类型
public enum Sex {
MAN,
WOMAN
}
枚举类型本质是类,编译此段代码会生成.class文件.通过Sex.MAN来访问Sex中的成员,其返回值是Sex类型.
2.常用方法
静态的values()方