- 挑战程序设计竞赛最小生成树习题(4道)及详解:C++实现
新西兰做的饭
图论挑战程序设计竞赛图论kruskalprim算法c++
最小生成树POJ1258:Agri-NetPOJ2377:BadCowtractorsPOJ2395:OutofHayAOJ2224:Saveyourcats这四道题比较基本,没有过多复杂的过程,所以整合在一篇博客,适合学过最小生成树算法后来加深理解POJ1258:Agri-Net点击进入题面最小生成树模板题,输入为图的邻接矩阵,所以优先考虑prim算法:#include#includeusing
- POJ 2421(prim)
A1823085974
http://poj.org/problem?id=2421这个题和poj1258是一样的,只要在1258的基础上那么几行代码,就可以A,水。题意:还是n连通问题,和1258不同的就是这个还有几条路在之前就已经连通了的,所以不需要再去连。1#include2#include345#defineinf10000967boolmark[1001];8inta[1001][1001],dis[1001]
- POJ1258 (最小生成树prim)
weixin_38169786
Agri-NetTimeLimit:1000MSMemoryLimit:10000KTotalSubmissions:46319Accepted:19052DescriptionFarmerJohnhasbeenelectedmayorofhistown!Oneofhiscampaignpromiseswastobringinternetconnectivitytoallfarmsintheare
- POJ1258 Agri-Net(最小生成树)
??yy
题意:市长要将每个村庄都连通起来,要求村庄之间路的总和最短要点:学了一下最小生成树,目前只会Kruskal算法,这个算法的基本思路是先按边的权值,从小到大排列,然后每次将边的起点和终点放进集合中,直至所有节点都在一个连通分量中。既然是连通分量,那就正好可以用刚学的并查集。如果这条边的两个节点通过find发现相同了,说明这两个已经在集合中了。最后并查集也可以看成一棵树,与我前面做过的一道题一样,只要
- poj1258 Agri-Net 最小生成树 prim kruskal 模板
update7
graphtheorysimulation
Agri-NetTimeLimit:1000MSMemoryLimit:10000KTotalSubmissions:56702Accepted:23513DescriptionFarmerJohnhasbeenelectedmayorofhistown!Oneofhiscampaignpromiseswastobringinternetconnectivitytoallfarmsintheare
- 最小生成树prime算法(和Dijkstra算法很类似,除了下面有个地方不同)
努力只为接近梦想
CF数据结构
#include#include#include#include#include#include#include//poj1258最小生成树prime算法(和Dijkstra算法很类似,除了下面有个地方不同)#include#defineinf10000000usingnamespacestd;intn,vis[110],dis[110],map[110][110];intprime(){intt
- 编程练习六(最小生成树)
Alex_Liuyuren
问题求解
A:Agri-Net(POJ1258)TimeLimit:1000MSMemoryLimit:10000KTotalSubmissions:15626Accepted:6327DescriptionFarmerJohnhasbeenelectedmayorofhistown!Oneofhiscampaignpromiseswastobringinternetconnectivitytoallfar
- 最小生成树【Kruskal】POJ2377,POJ1258,poj2358,hdu1233
sinat_19628145
最小生成树水题……全部用kruskal模板编写。(结合并查集)POJ2377注意kruskal的各个步骤注意使用时对模板的修改/*kruskal
**并查集实现
**1.边权值排序sort
**2.选择最小的边
**3.判断最小边上的点是否同一集合
**不是同一集合就合并
*/
#include
#include
#include
usingnamespacestd;
#defineMAX100
- POJ1258最小树水。。
cquzhengdayday
图论
题意,给了你N个农村,和每个农村之间的关系,问最小耗费。很明显是裸的最小生成树。下面贴上prime算法#include
#include
#include
#include
#include
usingnamespacestd;
constintmaxn=1e4+10;
constintINF=1e9;
intmincost[maxn];
boolused[maxn];
intv;
typedef
- POJ1258 Agri-Net
lk951208
Prim
Agri-NetTimeLimit: 1000MS MemoryLimit: 10000KTotalSubmissions: 48633 Accepted: 20146DescriptionFarmerJohnhasbeenelectedmayorofhistown!Oneofhiscampaignpromiseswastobringinternetconnectivitytoallfarmsin
- 最小生成树-Kruscal-POJ 1258 Agri-Net
kornberg_fresnel
ACM最短路并查集kruscal
POJ1258题目简单,背景忽略,就是直接裸露的使用kruscal方法求最短路。虽然简单,但是深深的体会了这个题目的恶意,简直了。。。就是如下的代码:for(inti=0;i
#include
#include
#include
usingnamespacestd;
constintmaxn=105;
intN;
intpre[maxn];
intr[maxn];
structD{
ints
- poj1258(最小生成树)
martinue
ACM图大二
Agri-NetTimeLimit: 1000MS MemoryLimit: 10000KTotalSubmissions: 48332 Accepted: 20032DescriptionFarmerJohnhasbeenelectedmayorofhistown!Oneofhiscampaignpromiseswastobringinternetconnectivitytoallfarmsin
- POJ1258 并查集和最小生成树
zcj5027
Agri-NetTimeLimit: 1000MS MemoryLimit: 10000KTotalSubmissions: 47782 Accepted: 19806DescriptionFarmerJohnhasbeenelectedmayorofhistown!Oneofhiscampaignpromiseswastobringinternetconnectivitytoallfarmsin
- 最小生成树专题
未名亚柳
一Prim算法/*POJ1258
有n个农场,已知这n个农场都互相相通,有一定的距离,现在每个农场需要装光纤,
问怎么安装光纤能将所有农场都连通起来,并且要使光纤距离最小,输出安装光纤的总距离
数据:(几个点,矩阵表示各点中间的距离)
4
04921
40817
98016
2117160
*/
#include
#include
#defineMaxInt0x3f3f3f
- prim算法
NaCl__
prim算法是构造最小生成树的一种算法==个人觉得写起来没有克鲁斯卡尔那么优美首先我们用个二维数组G[N][N]来保存权值,用low[N]数组来保存最小权值,vis[N]来保存是否已经添加到MTS中然后结合poj1258实现prim算法#include
#include
#include
#include
#include
usingnamespacestd;
constintinf=
- Agri Net POJ1258 && Constructing Roads POJ2421
struct
题意,在给出的图中,使用最小花费的边,使这个图仍然连通。
#include <cstdio>
#include <algorithm>
#include <cstring>
using namespace std;
const int maxn=10005;
int head[maxn];
int n,len=0,counter;
long
- poj1258
poj
简单题
View Code
#include
<
iostream
>
#include
<
cstdio
>
#include
<
cstdlib
>
#include
<
cstring
&
- POJ1258——Prim——Agri-Net
Prim
Description Farmer John has been elected mayor of his town! One of his campaign promises was to bring internet connectivity to all farms in the area. He needs your help, of course.
Farmer John
- POJ1258 Agri-Net(简单的prim最小生成树)
最小生成树
一题Prim最小生成树,没有任何陷阱。
#include < iostream >
using namespace std;
const int MAX_SIZE = 102 ;
long farm[MAX_SIZE][MAX_SIZE];
- poj1258prim算法
xiaotan1314
算法Prim算法
/*poj1258
*题意:有若干个农场,现需要将各个农场用光纤连接起来,各个农场之间连接的光纤长度也许不同,
*要求求出使得将所有农场连接起来的最短光线长度
*算法分析:使用矩阵将各个农场之间的光线长度存储起来、然后使用prim算法
*/
#include
#include
#defineMaxInt0x3f3f3f3f
#defineN110
//创建map二维数组储存图表,low数组记录每
- poj1258
poj
Agri-Net
Time Limit: 1000MS
Memory Limit: 10000K
Total Submissions: 18260
Accepted: 7324
Description Farmer John has been elected mayor of his town! O
- 快速切题 poj1258
poj
坑!!!我还以为一个整数会截到两行!! Agri-Net
Time Limit: 1000MS
Memory Limit: 10000K
Total Submissions: 40056
Accepted: 16303
Description Farmer John has been elec
- poj1258
Runner__1
算法
学习算法,感觉到理论和实践还是有很大不同的,就算理解了一个算法,但也只有真正能用它来解决一个问题的时候才能算掌握了。算法的道路,行之不易,且行且珍惜。把学到的算法和A过的题总结在这里,当做是一个学习的过程吧。好了,废话不多说,看题目。题目在这里,可以参考。http://poj.org/problem?id=1258题意分析:大意就是说一个农民当上了镇长,然后他想把所有农民通过网络联系起来,自然的,
- poj1258
gu_solo
最小生成树Prim
设计算法:最小生成树,我这里选择了Prim题目大意:给定N个村庄,和一个NxN的矩阵表示每两个村庄之间的距离,现在需要用光纤将所有的村庄都连接起来,问至少需要多长的光纤才能使N个村庄都能相互连通题目分析:很明显的最小生成树,参考最小生成树详解代码如下:publicclassMain_1258{
staticintn;
staticint[][]w=newint[100][100];
static
- Poj1258 Agri-Net (Prim)
Grit_ICPC
最小生成树
Agri-NetTimeLimit: 1000MS MemoryLimit: 10000KTotalSubmissions: 44981 Accepted: 18449DescriptionFarmerJohnhasbeenelectedmayorofhistown!Oneofhiscampaignpromiseswastobringinternetconnectivitytoallfarmsin
- Agri-Net —poj1258
poj
Agri-Net
Time Limit: 1000MS
Memory Limit: 10000K
Total Submissions: 44670
Accepted: 18268
Description Farmer John has been elected mayor of his town!
- poj1258 Agri-Net 最小生成树
最小生成树
Agri-Net
Time Limit: 1000MS
Memory Limit: 10000K
Total Submissions: 44032
Accepted: 18001
Description Farmer John has been elected mayor of his town!
- 【POJ 1258】 Agri-Net
ChallengerRumble
【POJ1258】Agri-Net最小生成树模板Prim#include
#defineINF0x3f3f3f3f
usingnamespacestd;
intmp[501][501];
intdis[501];
boolvis[501];
intn;
intPrim()
{
inti,j,w,p,sum=0;
memset(dis,-1,sizeof(dis));
memset(vis,0
- poj1258(prime水题)
yexiaohhjk
Prime
标准最小生成树.#include
#include
usingnamespacestd;
intM[210][210],book[210],dist[210],N;
intPrime(intcur)
{
intsum=0;
dist[1]=1;
memset(book,0,sizeof(book));
book[cur]=1;
for(inti=2;iM[index][j])
dist[j]=M[
- POJ1258 Agri-Net 最小生成树
AC_Gibson
裸的最小生成树实现代码如下:#include
#include
#include
usingnamespacestd;
#defineINF999999999
#defineMAX505
intmap[MAX][MAX];
bools[MAX];
intdist[MAX];
intn;
intprime()
{
memset(s,false,sizeof(s));
for(inti=1;imap[
- 强大的销售团队背后 竟然是大数据分析的身影
蓝儿唯美
数据分析
Mark Roberge是HubSpot的首席财务官,在招聘销售职位时使用了大量数据分析。但是科技并没有挤走直觉。
大家都知道数理学家实际上已经渗透到了各行各业。这些热衷数据的人们通过处理数据理解商业流程的各个方面,以重组弱点,增强优势。
Mark Roberge是美国HubSpot公司的首席财务官,HubSpot公司在构架集客营销现象方面出过一份力——因此他也是一位数理学家。他使用数据分析
- Haproxy+Keepalived高可用双机单活
bylijinnan
负载均衡keepalivedhaproxy高可用
我们的应用MyApp不支持集群,但要求双机单活(两台机器:master和slave):
1.正常情况下,只有master启动MyApp并提供服务
2.当master发生故障时,slave自动启动本机的MyApp,同时虚拟IP漂移至slave,保持对外提供服务的IP和端口不变
F5据说也能满足上面的需求,但F5的通常用法都是双机双活,单活的话还没研究过
服务器资源
10.7
- eclipse编辑器中文乱码问题解决
0624chenhong
eclipse乱码
使用Eclipse编辑文件经常出现中文乱码或者文件中有中文不能保存的问题,Eclipse提供了灵活的设置文件编码格式的选项,我们可以通过设置编码 格式解决乱码问题。在Eclipse可以从几个层面设置编码格式:Workspace、Project、Content Type、File
本文以Eclipse 3.3(英文)为例加以说明:
1. 设置Workspace的编码格式:
Windows-&g
- 基础篇--resources资源
不懂事的小屁孩
android
最近一直在做java开发,偶尔敲点android代码,突然发现有些基础给忘记了,今天用半天时间温顾一下resources的资源。
String.xml 字符串资源 涉及国际化问题
http://www.2cto.com/kf/201302/190394.html
string-array
- 接上篇补上window平台自动上传证书文件的批处理问卷
酷的飞上天空
window
@echo off
: host=服务器证书域名或ip,需要和部署时服务器的域名或ip一致 ou=公司名称, o=公司名称
set host=localhost
set ou=localhost
set o=localhost
set password=123456
set validity=3650
set salias=s
- 企业物联网大潮涌动:如何做好准备?
蓝儿唯美
企业
物联网的可能性也许是无限的。要找出架构师可以做好准备的领域然后利用日益连接的世界。
尽管物联网(IoT)还很新,企业架构师现在也应该为一个连接更加紧密的未来做好计划,而不是跟上闸门被打开后的集成挑战。“问题不在于物联网正在进入哪些领域,而是哪些地方物联网没有在企业推进,” Gartner研究总监Mike Walker说。
Gartner预测到2020年物联网设备安装量将达260亿,这些设备在全
- spring学习——数据库(mybatis持久化框架配置)
a-john
mybatis
Spring提供了一组数据访问框架,集成了多种数据访问技术。无论是JDBC,iBATIS(mybatis)还是Hibernate,Spring都能够帮助消除持久化代码中单调枯燥的数据访问逻辑。可以依赖Spring来处理底层的数据访问。
mybatis是一种Spring持久化框架,要使用mybatis,就要做好相应的配置:
1,配置数据源。有很多数据源可以选择,如:DBCP,JDBC,aliba
- Java静态代理、动态代理实例
aijuans
Java静态代理
采用Java代理模式,代理类通过调用委托类对象的方法,来提供特定的服务。委托类需要实现一个业务接口,代理类返回委托类的实例接口对象。
按照代理类的创建时期,可以分为:静态代理和动态代理。
所谓静态代理: 指程序员创建好代理类,编译时直接生成代理类的字节码文件。
所谓动态代理: 在程序运行时,通过反射机制动态生成代理类。
一、静态代理类实例:
1、Serivce.ja
- Struts1与Struts2的12点区别
asia007
Struts1与Struts2
1) 在Action实现类方面的对比:Struts 1要求Action类继承一个抽象基类;Struts 1的一个具体问题是使用抽象类编程而不是接口。Struts 2 Action类可以实现一个Action接口,也可以实现其他接口,使可选和定制的服务成为可能。Struts 2提供一个ActionSupport基类去实现常用的接口。即使Action接口不是必须实现的,只有一个包含execute方法的P
- 初学者要多看看帮助文档 不要用js来写Jquery的代码
百合不是茶
jqueryjs
解析json数据的时候需要将解析的数据写到文本框中, 出现了用js来写Jquery代码的问题;
1, JQuery的赋值 有问题
代码如下: data.username 表示的是: 网易
$("#use
- 经理怎么和员工搞好关系和信任
bijian1013
团队项目管理管理
产品经理应该有坚实的专业基础,这里的基础包括产品方向和产品策略的把握,包括设计,也包括对技术的理解和见识,对运营和市场的敏感,以及良好的沟通和协作能力。换言之,既然是产品经理,整个产品的方方面面都应该能摸得出门道。这也不懂那也不懂,如何让人信服?如何让自己懂?就是不断学习,不仅仅从书本中,更从平时和各种角色的沟通
- 如何为rich:tree不同类型节点设置右键菜单
sunjing
contextMenutreeRichfaces
组合使用target和targetSelector就可以啦,如下: <rich:tree id="ruleTree" value="#{treeAction.ruleTree}" var="node" nodeType="#{node.type}"
selectionChangeListener=&qu
- 【Redis二】Redis2.8.17搭建主从复制环境
bit1129
redis
开始使用Redis2.8.17
Redis第一篇在Redis2.4.5上搭建主从复制环境,对它的主从复制的工作机制,真正的惊呆了。不知道Redis2.8.17的主从复制机制是怎样的,Redis到了2.4.5这个版本,主从复制还做成那样,Impossible is nothing! 本篇把主从复制环境再搭一遍看看效果,这次在Unbuntu上用官方支持的版本。 Ubuntu上安装Red
- JSONObject转换JSON--将Date转换为指定格式
白糖_
JSONObject
项目中,经常会用JSONObject插件将JavaBean或List<JavaBean>转换为JSON格式的字符串,而JavaBean的属性有时候会有java.util.Date这个类型的时间对象,这时JSONObject默认会将Date属性转换成这样的格式:
{"nanos":0,"time":-27076233600000,
- JavaScript语言精粹读书笔记
braveCS
JavaScript
【经典用法】:
//①定义新方法
Function .prototype.method=function(name, func){
this.prototype[name]=func;
return this;
}
//②给Object增加一个create方法,这个方法创建一个使用原对
- 编程之美-找符合条件的整数 用字符串来表示大整数避免溢出
bylijinnan
编程之美
import java.util.LinkedList;
public class FindInteger {
/**
* 编程之美 找符合条件的整数 用字符串来表示大整数避免溢出
* 题目:任意给定一个正整数N,求一个最小的正整数M(M>1),使得N*M的十进制表示形式里只含有1和0
*
* 假设当前正在搜索由0,1组成的K位十进制数
- 读书笔记
chengxuyuancsdn
读书笔记
1、Struts访问资源
2、把静态参数传递给一个动作
3、<result>type属性
4、s:iterator、s:if c:forEach
5、StringBuilder和StringBuffer
6、spring配置拦截器
1、访问资源
(1)通过ServletActionContext对象和实现ServletContextAware,ServletReque
- [通讯与电力]光网城市建设的一些问题
comsci
问题
信号防护的问题,前面已经说过了,这里要说光网交换机与市电保障的关系
我们过去用的ADSL线路,因为是电话线,在小区和街道电力中断的情况下,只要在家里用笔记本电脑+蓄电池,连接ADSL,同样可以上网........
 
- oracle 空间RESUMABLE
daizj
oracle空间不足RESUMABLE错误挂起
空间RESUMABLE操作 转
Oracle从9i开始引入这个功能,当出现空间不足等相关的错误时,Oracle可以不是马上返回错误信息,并回滚当前的操作,而是将操作挂起,直到挂起时间超过RESUMABLE TIMEOUT,或者空间不足的错误被解决。
这一篇简单介绍空间RESUMABLE的例子。
第一次碰到这个特性是在一次安装9i数据库的过程中,在利用D
- 重构第一次写的线程池
dieslrae
线程池 python
最近没有什么学习欲望,修改之前的线程池的计划一直搁置,这几天比较闲,还是做了一次重构,由之前的2个类拆分为现在的4个类.
1、首先是工作线程类:TaskThread,此类为一个工作线程,用于完成一个工作任务,提供等待(wait),继续(proceed),绑定任务(bindTask)等方法
#!/usr/bin/env python
# -*- coding:utf8 -*-
- C语言学习六指针
dcj3sjt126com
c
初识指针,简单示例程序:
/*
指针就是地址,地址就是指针
地址就是内存单元的编号
指针变量是存放地址的变量
指针和指针变量是两个不同的概念
但是要注意: 通常我们叙述时会把指针变量简称为指针,实际它们含义并不一样
*/
# include <stdio.h>
int main(void)
{
int * p; // p是变量的名字, int *
- yii2 beforeSave afterSave beforeDelete
dcj3sjt126com
delete
public function afterSave($insert, $changedAttributes)
{
parent::afterSave($insert, $changedAttributes);
if($insert) {
//这里是新增数据
} else {
//这里是更新数据
}
}
 
- timertask
shuizhaosi888
timertask
java.util.Timer timer = new java.util.Timer(true);
// true 说明这个timer以daemon方式运行(优先级低,
// 程序结束timer也自动结束),注意,javax.swing
// 包中也有一个Timer类,如果import中用到swing包,
// 要注意名字的冲突。
TimerTask task = new
- Spring Security(13)——session管理
234390216
sessionSpring Security攻击保护超时
session管理
目录
1.1 检测session超时
1.2 concurrency-control
1.3 session 固定攻击保护
 
- 公司项目NODEJS实践0.3[ mongo / session ...]
逐行分析JS源代码
mongodbsessionnodejs
http://www.upopen.cn
一、前言
书接上回,我们搭建了WEB服务端路由、模板等功能,完成了register 通过ajax与后端的通信,今天主要完成数据与mongodb的存取,实现注册 / 登录 /
- pojo.vo.po.domain区别
LiaoJuncai
javaVOPOJOjavabeandomain
POJO = "Plain Old Java Object",是MartinFowler等发明的一个术语,用来表示普通的Java对象,不是JavaBean, EntityBean 或者 SessionBean。POJO不但当任何特殊的角色,也不实现任何特殊的Java框架的接口如,EJB, JDBC等等。
即POJO是一个简单的普通的Java对象,它包含业务逻辑
- Windows Error Code
OhMyCC
windows
0 操作成功完成.
1 功能错误.
2 系统找不到指定的文件.
3 系统找不到指定的路径.
4 系统无法打开文件.
5 拒绝访问.
6 句柄无效.
7 存储控制块被损坏.
8 存储空间不足, 无法处理此命令.
9 存储控制块地址无效.
10 环境错误.
11 试图加载格式错误的程序.
12 访问码无效.
13 数据无效.
14 存储器不足, 无法完成此操作.
15 系
- 在storm集群环境下发布Topology
roadrunners
集群stormtopologyspoutbolt
storm的topology设计和开发就略过了。本章主要来说说如何在storm的集群环境中,通过storm的管理命令来发布和管理集群中的topology。
1、打包
打包插件是使用maven提供的maven-shade-plugin,详细见maven-shade-plugin。
<plugin>
<groupId>org.apache.maven.
- 为什么不允许代码里出现“魔数”
tomcat_oracle
java
在一个新项目中,我最先做的事情之一,就是建立使用诸如Checkstyle和Findbugs之类工具的准则。目的是制定一些代码规范,以及避免通过静态代码分析就能够检测到的bug。 迟早会有人给出案例说这样太离谱了。其中的一个案例是Checkstyle的魔数检查。它会对任何没有定义常量就使用的数字字面量给出警告,除了-1、0、1和2。 很多开发者在这个检查方面都有问题,这可以从结果
- zoj 3511 Cake Robbery(线段树)
阿尔萨斯
线段树
题目链接:zoj 3511 Cake Robbery
题目大意:就是有一个N边形的蛋糕,切M刀,从中挑选一块边数最多的,保证没有两条边重叠。
解题思路:有多少个顶点即为有多少条边,所以直接按照切刀切掉点的个数排序,然后用线段树维护剩下的还有哪些点。
#include <cstdio>
#include <cstring>
#include <vector&