E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Roads
HDU 1301 Jungle
Roads
http://acm.hdu.edu.cn/showproblem.php?pid=1301 最简单的最小生成树 View Code #include <stdio.h> #include <stdlib.h> int p[30]; int cnt,n; typedef struct L { int a,b,d; }L; L r[1
·
2015-11-12 21:59
HDU
UVa 10308
Roads
in the North(DFS)
题意: 给定一张图,其实是一个二叉树,求二叉树中节点的最大距离。 思路: 其实这一题就是编程之美上面的:求二叉树中节点的最大距离。 这个最大距离肯定是两个叶子节点之间的,于是dfs遍历二叉树就行了。 #include <string> #include <vector> #include <sstream> #include <iostr
·
2015-11-12 20:35
DFS
POJ 1947 - Rebuilding
Roads
树型DP(泛化背包转移)..
dp[x][y]表示以x为根的子树要变成有y个点..最少需要减去的边树... 最终ans=max(dp[i][P]+t) < i=(1,n) , t = i是否为整棵树的根 > 更新的时候分为两种情况..一种是要从其这个孩子转移过来...枚举做01背包..更新出每个状态的最小值..或者说直接砍
·
2015-11-12 20:01
Build
zoj 1406 Jungle
Roads
从A到F找到最短路即可,由于我不会用prim算法 只能用ku...算法,幸好这道题没有让输出路路径, 所以用ku...算法也行 我通常都是这样写的1.把边存起来2.快排3.并查集 呵呵,过了,还行吧,对了输入注意用scanf 中的%d前加一个空格 #include<stdio.h> #include<stdlib.h> #include<string.h&
·
2015-11-12 20:46
ZOJ
ZOJ2923 Calculate
Roads
(SPFA上的dp)
算是学了图dp后的第一次应用吧。题目其实真的是非常不严谨,什么都没说,基本靠猜,而且严格来说数据应该会有爆int的,不过不管那么多啦,思路对了就好- -0 #include<iostream> #include<cstring> #include<string> #include<cstdio> #include<v
·
2015-11-12 19:32
SPFA
Hdu 1301 Jungle
Roads
(最小生成树)
地址:http://acm.hdu.edu.cn/showproblem.php?pid=1301 很明显,这是一道“赤裸裸”的最小生成树的问题; 我这里采用了Kruskal算法,当然用Prim算法也一样可以解题。 #include <iostream> #include <cstring> #include <cstdio
·
2015-11-12 19:04
最小生成树
POJ 1947 Rebuilding
Roads
【树状DP】
POJ 1947 Rebuilding
Roads
http://poj.org/problem?id=1947大意:有n个点组成一个树,问至少要删除多少条边才能获得一棵有p个结点的子树?
·
2015-11-12 19:27
Build
{POJ}{2421}{Constructing
Roads
}{Prim}
基本MST思路 #include<iostream> using namespace std; #define MAX 10000 #define INF 999999 int g[MAX][MAX],visit[MAX],dist[MAX]; int nv,ne,sum; int prim() { int i,j,tmp,mark_pos,mark_min;
·
2015-11-12 17:54
struct
POJ 1947 Rebuilding
Roads
(树形DP)
题意: 给定 n 个点的树,最少删多少边,会有棵 p 个节点的树。 思路: 1. dp[u][p] 表示以 u 为根节点保留 p 个节点最少删除的边数。初始化的地方比较巧妙:dp[u][1] = 0,其他赋值 INFS 2. 如果保留 u 的孩子节点 v,则有 dp[u][p] = min(dp[u][p - k] + dp[v][k]),如果不保留则有 dp[u][p] = dp[u][
·
2015-11-12 17:00
Build
HDU 1301 Jungle
Roads
题解:最小生成树………… #include <cstdio> #include <algorithm> using namespace std; struct node{int a,b,l;}seg[900]; int f[27],m,n,a,b; char c; int sf(int x){return f[x]==x?x:f[x]=sf(f[x]);} b
·
2015-11-12 16:52
HDU
HDU 1102 Constructing
Roads
题目大意:已知一个连接了q条路的城镇,求最小生成树。 #include <cstdio> #include <cstring> #include <algorithm> using namespace std; struct data{int l,x,y;}seg[10010]; int r,f[10010],n,l,cnt,x,y,fx,fy,no
·
2015-11-12 16:49
struct
ZOJ 1649 Rescue
There are WALLs,
ROADs
, and GUARDs in the prison. Angel's fr
·
2015-11-12 15:40
res
hdu 1025:Constructing
Roads
In JGShining's Kingdom(DP + 二分优化)
Constructing
Roads
In JGShining's Kingdom Time Limit: 2000/1000 MS (Java/Others)  
·
2015-11-12 15:11
struct
sdut2493Constructing
Roads
http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2493 题意:对于一个给定的无向图,求其中有一条边的边权可以减半的情况下 从 A 点到 B 点的最短路。 做法:可以用spfa求出 A 到所有点的最短路 dis 和 B 到所有点的最短路 dis1 。然后枚举所有边(u,v),找出最
·
2015-11-12 14:51
struct
poj1724
ROADS
Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 10804 Accepted
·
2015-11-12 13:08
poj
[POJ 1947] Rebuilding
Roads
Rebuilding
Roads
Time Limit: 1000MS Memory Limit: 30000K Total Submissions
·
2015-11-12 12:39
Build
HDUOJ----1301 Jungle
Roads
Jungle
Roads
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768
·
2015-11-12 12:11
HDU
HDUOJ---1102Constructing
Roads
Constructing
Roads
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536
·
2015-11-12 12:07
struct
HDUOJ---1102Constructing
Roads
Constructing
Roads
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536
·
2015-11-12 12:07
struct
HDU 3721 Building
Roads
(2010 Asia Tianjin Regional Contest) - from lanshui_Yang
感慨一下,区域赛的题目果然很费脑啊!!不过确实是一道不可多得的好题目!! 题目大意:给你一棵有n个节点的树,让你移动树中一条边的位置,即将这条边连接到任意两个顶点(边的大小不变),要求使得到的新树的直径最小。 解题思路:此题先求出
·
2015-11-12 11:53
Build
POJ 1947 Rebuilding
Roads
(树DP)
题意:给一棵树,问最少砍断多少条边才能产生一个恰含m个结点的子树。 分析:将树有根化后,我们考虑以 i 为根结点的子树,要在这棵子树内产生一个结点数目为 j 的子树,要么包含结点 i ,要么不包含,所以定义 dp[i][j][0]表示从以结点 i 为根的子树中得到恰含 j 个节点且不含结点 i 的子树最少需要砍掉的边数,dp[i][j][1]表示从以结点 i 为根的子树中得到恰含 j 个节点且包
·
2015-11-12 11:19
Build
HDU 1025 Constructing
Roads
In JGShining's Kingdom(DP+二分)
点我看题目 题意 :两条平行线上分别有两种城市的生存,一条线上是贫穷城市,他们每一座城市都刚好只缺乏一种物资,而另一条线上是富有城市,他们每一座城市刚好只富有一种物资,所以要从富有城市出口到贫穷城市,所以要修路,但是不能从富有的修到富有的也不能从贫穷的修到贫穷的,只能从富有的修到贫穷的,但是不允许修交叉路,所以问你最多能修多少条路。 题意 :这个题一开始我瞅了好久都没觉得是DP,后来二师兄给讲
·
2015-11-12 09:40
struct
POJ 1724
ROADS
ROADS
Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 9118 Accepted
·
2015-11-11 19:27
poj
hdu--(1025)Constructing
Roads
In JGShining's Kingdom(dp/LIS+二分)
Constructing
Roads
In JGShining's Kingdom Time Limit: 2000/1000 MS (Java/Others)  
·
2015-11-11 19:54
struct
poj----(1251)Jungle
Roads
(最小生成树)
Jungle
Roads
Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 
·
2015-11-11 19:56
最小生成树
hdu 1025 Constructing
Roads
In JGShining's Kingdom
http://acm.hdu.edu.cn/showproblem.php?pid=1025 题意:题目的意思就是有两种城市,穷和富,要富的运到穷的里面问你最多能建几条路。 思路:就是按穷的递增序列来找富的城市里的最大上升子序列。就是LIS法,因为有500000个数据所以用普通的方法肯定超时,那么就用二分查找就可以了。每次就是找第一个比这个数大的数如果没有就放在最右边把最长的序列加一,否则把第
·
2015-11-11 17:51
struct
Constructing
Roads
In JGShining's Kingdom
JGShining's kingdom consists of 2n(n is no more than 500,000) small cities which are located in two parallel lines. Half of these cities are rich in resource (we call them rich cities) while the ot
·
2015-11-11 17:17
struct
POJ1947 - Rebuilding
Roads
(树形DP)
题目大意 给定一棵n个结点的树,问最少需要删除多少条边使得某棵子树的结点个数为p 题解 很经典的树形DP~~~直接上方程吧 dp[u][j]=min(dp[u][j],dp[u][j-k]+dp[v][k]-1) 方程的意思是 以u结点为根保留j个结点需要删除的最少的边的条数,那么可以选择在某个子结点v中选择k个保留,其他结点保留j-k个,为什么需要-1呢,因为相当于把子树v衔接到结点u上,因
·
2015-11-11 17:08
Build
poj 1947 Rebuilding
Roads
树形动态规划,由左向右合并子树
对于一颗以 rt 为根的树,其有 I 个子节点分别为 S1,S2,。。。,SI ,则 状态 dp(i,j)表示前 1,2,,,,,I 子树,组合而成一棵 包含 J个节点的 子树的最小花费 sum(Si) 表示 以 Si 节点为根的子树,节点数量 Cut (Si, K) 表示 子树 Si 中取得 一棵包含 根Si 的子树 且节点数量为 K 的最小花
·
2015-11-11 17:20
Build
HDU 1102 Constructing
Roads
Constructing
Roads
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536
·
2015-11-11 16:16
struct
HDU 1301 Jungle
Roads
(裸最小生成树)
贴一个kurskral. 1 /* 2 HDU 1301 Jungle
Roads
3 最小生成树Kurskal模版 4 */ 5 #include <stdio.h>
·
2015-11-11 15:08
最小生成树
hdu 1853 Cyclic Tour 最小费用最大流
pid=1853 There are N cities in our country, and M one-way
roads
connecting them.
·
2015-11-11 14:12
HDU
POJ2749 Building
roads
POJ2749 Building
roads
Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 4522
·
2015-11-11 12:25
Build
【HDU1301】Jungle
Roads
(MST基础题)
爽爆。史上个人最快MST的记录7分40s。。一次A。 1 #include <iostream> 2 #include <cstring> 3 #include <cstdlib> 4 #include <cstdio> 5 #include <cmath> 6 #include <ccty
·
2015-11-11 12:58
HDU
【HDU1102】Constructing
Roads
(MST基础题)
最小生成树水题。prim一次AC 1 #include <iostream> 2 #include <cstring> 3 #include <cstdlib> 4 #include <cstdio> 5 #include <cctype> 6 #include <cmath> 7
·
2015-11-11 12:52
struct
Constructing
Roads
----poj2421
题目链接: http://poj.org/problem?id=2421 想把n个村庄连接在一起;求最小生成树,不同的是已经有了m条线段链接在一起了,求剩下的; 感觉用Kruskal会简单一点 #include<stdio.h> #include<string.h> #include<map> #include<iostream>
·
2015-11-11 12:08
struct
poj 1724:
ROADS
(DFS + 剪枝)
ROADS
Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 10777
·
2015-11-11 11:33
poj
HDU 1102 Constructing
Roads
(最小生成树)
最小生成树模板(嗯……在kuangbin模板里面抄的……) 最小生成树(prim) /** Prim求MST * 耗费矩阵cost[][],标号从0开始,0~n-1 * 返回最小生成树的权值,返回-1表示原图不连通 */ const int INF = 0x3f3f3f3f; const int MAXN = 110; bool vis[MAXN]; int l
·
2015-11-11 11:16
struct
POJ 1947 Rebuilding
Roads
(树形DP)
题目链接 树形DP慢慢来,慢慢学习。这个题,就是树上的背包。 1 #include <cstdio> 2 #include <cstring> 3 #include <iostream> 4 #include <cmath> 5 #include <algorithm> 6 using namespace st
·
2015-11-11 10:14
Build
POJ 1724
ROADS
(二维SPFA)
题目链接 用STL实现超时了,用普通队列500+,看到spfa,反应太迟钝了。 1 #include <cstring> 2 #include <cstdio> 3 #include <string> 4 #include <iostream> 5 #include <algorithm> 6 #include
·
2015-11-11 10:07
SPFA
POJ 3411 Paid
Roads
(DFS)
题目链接 点和边 都很少,确定一个界限,爆搜即可。判断点到达注意一下,如果之前已经到了,就不用回溯了,如果之前没到过,要回溯。 1 #include <cstring> 2 #include <cstdio> 3 #include <string> 4 #include <iostream> 5 #include <al
·
2015-11-11 10:05
poj
hdu1301 Jungle
Roads
(Prim)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1301 依旧Prim............不多说了 1 #include<iostream> 2 #include<cstdio> 3 #include<algorithm> 4 5 using namesp
·
2015-11-11 10:13
Prim
hdu1102 Constructing
Roads
(简单最小生成树Prim算法)
Problem Description There are N villages, which are numbered from 1 to N, and you should build some
roads
·
2015-11-11 10:13
struct
POJ 1724
ROADS
(BFS+优先队列)
题目链接 题意 : 求从1城市到n城市的最短路。但是每条路有两个属性,一个是路长,一个是花费。要求在花费为K内,找到最短路。 思路 :这个题好像有很多种做法,我用了BFS+优先队列。崔老师真是千年不变的SPFA啊,链接。还有一个神用了好几种方法分析,链接 。 用优先队列控制长度,保证每次加的都是最短的,每次从队列中取元素,沿着取出来的点往下找,如果费用比K少再加入队列,否则不加,这
·
2015-11-11 10:38
优先队列
POJ 3411 Paid
Roads
(SPFA || DFS)
题目链接 题意 : 要从1城市到n城市,求最短路是多少,从a城市到达b城市的路程,如果你到过c城市,则需要走p,否则走r长。 思路 : 因为可以来回走,所以不能用单纯的最短路,可以用二维SPFA,状态压缩一下,第二维来记录状态,表示到过这个点的第几个状态。也可以用DFS,因为最多十个点,所以如果走某一个点走过三遍说明就是真的只增加费用了,也就是真正的在走环路了。DFS分析 二维SPFA
·
2015-11-11 10:38
SPFA
hdu 1301 Jungle
Roads
最小生成树
A burst of foreign aid money was spent on extra
roads
between villages some yea
·
2015-11-11 09:32
最小生成树
POJ 1251 Jungle
Roads
题目连接: http://poj.org/problem?id=1251 题目大意: Lagrishan岛屿上的首领遇到一个问题。几年前外国援助的钱花在了修建两个村庄的道路上了,但是道路的毁坏是需要维修的,因此 村长必须放弃一些道路的维护。因此减少一些道路, 即使这些道路没有以前那么短了。长老们在讨论如何才能将所有的道路连通并且成本最低。你的任务就是编写一个程序来解决这个问题。 输入:
·
2015-11-11 08:19
poj
poj 1724
ROADS
1 1 2 http://poj.org/problem?id=1724 3 一开始就直接写了一个DFS,直接TLE,以为用dfs肯定会超,后来看到discuss里有人 4 2 有人用了DFS,所以看了 看,发现进行一些优化,后就可以AC 5 3 优化看代码 6 4 7 5 #include<stdio.h> 8 6 #inclu
·
2015-11-11 07:40
poj
poj 1724
ROADS
1 http://poj.org/problem?id=1724 2 题目大意:单向边最短路问题,但是每条边都有一个费用,要求你的最短路方案的总的花费不能超过限制。 3 4 BFS+优先队列优化 5 因为题目要求的是在给定费用下的最短距离,所以 以距离优先建队列 广搜 6 7 #include<stdio.h> 8 #include<string
·
2015-11-11 07:40
poj
poj 3411 Paid
Roads
1 /* http://poj.org/problem?id=3411 2 题目意思: 3 从a到b有两种付费方式 1:在a之前已经访问了c(不一定是刚访问),付费p;2:a直接到b 付费r; 4 求 1到n 的最小费用(注意有的点可以访问多次) 5 6 解题思路:dfs ,题目的关键是一个点可能被访问多次,一条边也可能被访问多次 7 某一个点是否访问过可以用f[
·
2015-11-11 07:38
poj
上一页
9
10
11
12
13
14
15
16
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他