图论
文章平均质量分 51
北里五井
这个作者很懒,什么都没留下…
展开
-
HDU - 1285 -确定比赛名次【拓扑排序】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1285#include<bits/stdc++.h>using namespace std;const int maxn = 515;int mp[maxn][maxn];int _in[maxn];int ans[maxn];int N, M;void init(){...原创 2018-07-30 11:11:01 · 143 阅读 · 0 评论 -
2018年北京信息科技大学第十届程序设计竞赛暨ACM选拔赛 A -PUBG
链接:https://www.nowcoder.com/acm/contest/118/A来源:牛客网 题目描述最近,喜爱ACM的PBY同学沉迷吃鸡,无法自拔,于是又来到了熟悉的ERANGEL。经过一番搜寻,PBY同学准备动身前往安全区,但是,地图中埋伏了许多LYB,PBY的枪法很差,希望你能够帮他找到一条路线,每次只能向上、下、左、右移动,尽可能遇到较少的敌人。输入描述:...原创 2018-05-13 16:10:28 · 330 阅读 · 0 评论 -
2018 蓝桥杯省赛 B 组模拟赛(五)F. 结果填空:藏宝图
蒜头君得到一张藏宝图。藏宝图是一个 10 \times 1010×10 的方格地图,图上一共有 1010 个宝藏。有些方格地形太凶险,不能进入。整个图只有一个地方可以出入,即是入口也是出口。蒜头君是一个贪心的人,他规划要获得所有宝藏以后才从出口离开。藏宝图上从一个方格到相邻的上下左右的方格需要 11 天的时间,蒜头君从入口出发,找到所有宝藏以后,回到出口,最少需要多少天。#inc...原创 2018-03-30 09:14:33 · 208 阅读 · 0 评论 -
POJ - 2251 - Dungeon Master 【BFS】
题意: 从S到E需要多少分钟(只能上下左右前后移动一格,每移动一个耗费1分钟);#include<iostream>#include<cstdio>#include<cstring>#include<queue>using namespace std;const int maxn = 35;struct node{ int...原创 2018-08-04 14:34:14 · 171 阅读 · 0 评论 -
POJ - 3984 -迷宫问题【BFS + 打印路径】
题解: 用一个结构体二维数组来存每个点的上一个点的坐标,通过递归到达起点,在回溯时打印路径#include<iostream>#include<cstdio>#include<cstring>#include<queue>using namespace std;int mp[5][5];bool vis[5][5];int di...原创 2018-08-04 15:14:16 · 253 阅读 · 0 评论 -
UVA - 10129 -Play on Words【欧拉路】/补
(来自:《算法竞赛入门经典》)题意:输入n(n≤100000)个单词,是否可以把所有这些单词排成一个序列,使得每个单词的第一个字母和上一个单词的最后一个字母和上一个单词的第一个字母相同(例如acm,malform,mouse)。每个单词最多包含1000个小写字母。输入中可以有重复的单词。【分析】把字母看作结点,单词看成有向边,则问题有解,当且仅当图中有欧拉路径。前面讲过,有向图存在欧拉道路...原创 2018-08-01 10:48:50 · 144 阅读 · 0 评论 -
POJ - 2230 - Watchcow【欧拉回路】/补
#include<iostream>#include<cstdio>#include<vector>using namespace std;const int maxn = 1e4+10;const int maxm = 4e4+10;int n, m;struct Edge{ int to,flag;}e;vector<Edg...原创 2018-08-01 15:44:48 · 161 阅读 · 0 评论 -
HDU - 2612 - Find a way 【BFS】
题意: 输出Y和M 到图中 ‘@’的最小步数之和题解: 用三维数组分别储存Y 和 M 到 图中的每一点的步数,输出最小的步数和;#include<iostream>#include<cstdio>#include<cstring>#include<queue>#define INF 0x7ffffffusing namespace...原创 2018-08-06 09:53:58 · 191 阅读 · 0 评论 -
搜索剪枝
what's 剪枝?常用的搜索有Dfs和Bfs。Bfs的剪枝通常就是判重,因为一般Bfs寻找的是步数最少,重复的话必定不会在之前的情况前产生最优解。深搜,它的进程近似一颗树(通常叫Dfs树)。而剪枝就是一种生动的比喻:把不会产生答案的,或不必要的枝条“剪掉”。剪枝的关键就在于剪枝的判断:什么枝该剪,什么枝不该剪,在什么地方减。剪枝的原则?正确性,准确性,高效性。常用...转载 2018-08-06 10:59:16 · 547 阅读 · 0 评论 -
POJ-3278 - Catch That Cow【BFS】
题意: John要去抓奶牛,奶牛不会移动,John移动的方式有三种:向前移动一步,耗时一分钟; 向后移动一步,耗时一分钟; 向前移动当前所处的位置的2倍,耗时一分钟;题解:1. if(N >= k),当John所处的位置大于奶牛的, John 只能向后一步一步移动,即耗时N - K ; 2. if(N < K),用BFS去解决; #include<io...原创 2018-08-06 11:56:36 · 148 阅读 · 0 评论 -
POJ - 1321 - 棋盘问题 【DFS】
在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行的摆放方案C。Input输入含有多组测试数据。 每组数据的第一行是两个正整数,n k,用一个空格隔开,表示了将在一个n*n的矩阵内描述棋盘,以及摆放棋子的数目。 n <= 8 , k <= n...原创 2018-08-10 15:05:48 · 201 阅读 · 0 评论 -
HDU - 2544 最短路【dijkstra】
在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt。但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要寻找最短的从商店到赛场的路线,你可以帮助他们吗? Input输入包括多组数据。每组数据第一行是两个整数N、M(N<=100,M<=10000),N表示成都的大街上有几个路口,标号为1的路口是商店所在地,标号为N的路口是赛...原创 2018-04-30 17:09:32 · 145 阅读 · 0 评论 -
POJ 3522 Slim Span
DescriptionGiven an undirected weighted graph G, you should find one of spanning trees specified as follows.The graph G is an ordered pair (V, E), where V is a set of vertices {v1, v2, …, vn} and ...原创 2018-04-16 16:54:53 · 131 阅读 · 0 评论 -
POJ1679-The Unique MST(次小生成树)
DescriptionGiven a connected undirected graph, tell if its minimum spanning tree is unique. Definition 1 (Spanning Tree): Consider a connected, undirected graph G = (V, E). A spanning tree of G is ...原创 2018-04-16 15:06:16 · 151 阅读 · 0 评论 -
POJ - 1751 Highways (Kruskal/Prime)
The island nation of Flatopia is perfectly flat. Unfortunately, Flatopia has a very poor system of public highways. The Flatopian government is aware of this problem and has already constructed a numb...原创 2018-04-13 16:27:55 · 204 阅读 · 0 评论 -
POJ - 2349 Arctic Network (Kruskal)
The Department of National Defence (DND) wishes to connect several northern outposts by a wireless network. Two different communication technologies are to be used in establishing the network: every o...原创 2018-04-13 15:19:34 · 156 阅读 · 0 评论 -
前序中序 输出后序
#include<iostream>#include<cstring>using namespace std;const int maxn = 100;typedef struct BitNode{ char Data; struct BitNode *Lchild,*rchild;}BitNode,*Bittree;char preArray[maxn...原创 2018-05-08 21:02:25 · 179 阅读 · 0 评论 -
UVA - 679 Dropping Balls
#include<iostream>#include<algorithm>#include<cstring>using namespace std;int main(){ int T; while(cin >> T) { if(T == -1) break; while(T--) ...原创 2018-05-08 19:02:14 · 91 阅读 · 0 评论 -
POJ - 3268 Silver Cow Party【dijstra】
One cow from each of N farms (1 ≤ N ≤ 1000) conveniently numbered 1..N is going to attend the big cow party to be held at farm #X (1 ≤ X ≤ N). A total of M (1 ≤ M≤ 100,000) unidirectional (one-way roa...原创 2018-05-09 21:04:21 · 117 阅读 · 0 评论 -
POJ - 1797 Heavy Transportation
Background Hugo Heavy is happy. After the breakdown of the Cargolifter project he can now expand business. But he needs a clever man who tells him whether there really is a way from the place his cus...原创 2018-05-08 17:52:53 · 111 阅读 · 0 评论 -
POJ - 2253 Frogger 【dijkstra】
题意 :求出第一个坐标通往第二个坐标的所有路径中找到最大的边中里最小的那个;就是说我们去找所有路径中最大的边,然后在最大边里输出最小的那个;#include<iostream>#include<cstring>#include<algorithm>#include<cmath>const int INF = 0x3f3f3f3f;us...原创 2018-05-01 20:40:44 · 102 阅读 · 0 评论 -
POJ - 2387 Til the Cows Come Home 【dijkstra】
Bessie is out in the field and wants to get back to the barn to get as much sleep as possible before Farmer John wakes her for the morning milking. Bessie needs her beauty sleep, so she wants to get b...原创 2018-04-30 19:08:38 · 89 阅读 · 0 评论 -
POJ - 3126 - Prime Path 【BFS + 素数打表】
题意:给你两个四位数的素数,让你从第一个素数变成第二个,每次操作只能改动一位数字,且需要保证改动后的数字任为为素数;输出需要操作多少次; 题解:先素数打表,BFS处理时将满足条件的数字放入队列中(未被访问过且为素数,与队列front()的元数只有一位数字不同);#include<iostream>#include<cstdio>#include<cstr...原创 2018-08-08 10:24:22 · 220 阅读 · 0 评论