自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Tuesday

https://yukizzz.github.io/

  • 博客(8)
  • 收藏
  • 关注

原创 UVA 116_ Unidirectional TSP

题意:给定整数矩阵,从第一列的任何一个位置出发,每次可以向右、右上、右下走一个格,将最后一行和第一行看成是邻接的,最终到达最后一列,路径长度为所经过格中的整数之和,求最小路径, 答案不唯一,输出字典序最小的路径。分析:数组dp[i][j]记录从第i行第j列出发,到达最后一列的最小路径长度 每个阶段都有三种决策,向右/右上/右下【注意最后一行和第一行的情况 字典序最小,每次先都选择字典序较小的决策 打

2016-01-31 19:32:49 332

原创 UVA 10603_Fill

题意:给定三个杯子容量,初始只有第三个杯子满,其余为空,求最少需要倒多少水才能让某一杯子中有d升水,如果不能达到,则小于d且尽量接近。分析:因为要求转移水量最少,所以采用优先级队列保存每次的状态,保证每次都是取出转移水量最少的点进行扩展。bfs求出杯中水达到d(接近d)时最少转移水量。代码:#include<cstdio> #include<iostream> #include<cstring> #

2016-01-31 19:18:05 286

原创 POJ 3083_Children of the Candy Corn

题意:给定迷宫图,求出一个人从入口进,从出口出,所走过的最短路径以及分别沿着左手边和右手边的墙走出迷宫所走过的方格数。分析: bfs求最短路 对于沿左右两边的墙走的情况,记录好行走的方向及相对应的左/右边墙的方向坐标 注意判断前方和左/右是否为墙,若前方为墙,则进行逆时针旋转,若左/右方不为墙,则应直接向左/右方向走。 注意考虑前方和左/右边坐标不在迷宫内的情况。 代码:#include<iostr

2016-01-31 16:55:56 296

原创 UVA 140_Bandwidth

题意:定义一个结点的带宽是其距离所有相连结点的最远距离,一个图的带宽是图中所有结点带宽的最小值。给出一个图中各个结点的相邻情况,要求写出一个结点的排列,使得其所构成的图带宽最小。分析:枚举全排列+剪枝 注意: 输入时的处理 虽然结点个数不超过8个但是结点可以是26个字母中的任意一个! 孤立结点的情况 代码:#include<iostream> #include<cstring> #include<

2016-01-31 16:16:53 256

原创 UVA 129_ Krypton Factor

题意:一个字符串含有两个相邻的重复的子串,则称这个串为容易的串,其他为困难的串,对于给定n,l,求出由前l个字符组成的字典序第n小的困难的串。分析:按字典序在字符串末尾增加新的字符,并从当前字符串后缀入手,判断长度为偶数的子串中,是否含有重复的相邻子串。代码:#include<cstdio> #include<iostream> using namespace std; int n, l, cnt;

2016-01-31 15:58:40 344

原创 UVA 1347_Tour

题意:给定一系列按x坐标升序排列的点,一个人从左向右走到终点再从终点走回起点,要求每个点恰好经过一次,问所走过的最短路径长度。分析:可以看成是两个人同时从起点向终点走,且除起点终点外每个点恰有一个人经过。 John uses the following strategy: he starts from the leftmost point, then he goes strictly left

2016-01-31 15:37:17 398

原创 UVA 437_The Tower of Babylon

题意:一堆石头,给定长宽高,每种石头均可以使用无数次,问这堆石头可以叠放的最高高度,要求下面的石头的长和宽分别严格大于上面石头的长和宽。分析:采用DAG最长路算法,由于长宽较大,不能直接用于表示状态,因此采用d[i][x]表示以第i块石头为最高点,以其第x个边为高所能达到的最大高度,其中i为石头标号,x代表长/宽/高,然后根据长宽高要求构造DAG,最后记忆化搜索求出最长路。代码:#include<i

2016-01-27 17:15:59 465

原创 Codeforces Round #340 (Div. 2)

A. Elephant题意:给定数x,从1.2.3.4.5中选择最少个数的数使最终和为x。分析:由于每个数字使用次数不限,所以每次都用5填充,若不能正好填满,剩下的余数再在1-4中选择。代码:#include<iostream> const int maxn=250; const int INF=0xfffffff; using namespace std; int main (void) {

2016-01-27 11:34:58 420 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除