
DP
文章平均质量分 50
DP
NeroXD
这个作者很懒,什么都没留下…
展开
-
Brackets sequence UVA - 1626
Brackets sequence定义如下正规括号序列:①空序列是正规括号序列②如果S是正规括号序列,那么(S)和[S]也是正规括号序列③如果A和B都是正规括号序列,那么AB也是正规括号序列。输入一个长度不超过100的,由"("、")"、"["、"]"构成的序列,添加尽量少的括号,得到一个规则序列。如有多解,任意输出一个序列即可。dp[i][j]表示从i到j需要加多少括号,边界为i==j时,要加一个。由题目定义②③可知,有两种转移情况:1、两边是()或[],那么可由dp[i+1][j-1]转原创 2021-07-12 21:04:55 · 255 阅读 · 0 评论 -
Jin Ge Jin Qu hao UVA - 12563
Jin Ge Jin Qu hao UVA - 12563给定n首歌和他们的持续时长(每首不超过180s),求在t时间内(不包含t)能唱的最多歌数,并求此数量下能唱的最长时间,求出来后歌数加1,时长加678。题目给定t的范围为≤1E9,n≤50,但由于每首不超过180s,所以t最大为180*50。经典的01背包,要注意的点:1、优先选取曲目最多,在此条件下求时间最长。2、当最大歌数为0的时候,最大时间为0,不能和正常情况一样更新,否则会使最大时间变成t-1。测试数据12 23 4#inc原创 2021-07-09 19:43:18 · 141 阅读 · 0 评论 -
Unidirectional TSP UVA - 116
Unidirectional TSP UVA - 116给一个m行n列的证书矩阵,从第一列任何一个位置每次往右,又上或右下走一格,最终到达最后一列。要求经过的整数之和最小。整个矩阵是环形的,即第一行的上一行是最后一行,最后一行的下一行是第一行。输出路径上每列的行号。多解时,输出字典序最小的。若不需要输出路径或任意输出一个路径,这就是水题一个。但是要求输出字典序最小的解。开始做是顺着遍历,每次记录pre是多少,dp数组表示第走到(i,j)时已经走的路程,但是这个过程中是有后效性的,所以无法确定最开始记原创 2021-07-09 18:40:56 · 102 阅读 · 0 评论 -
The Tower of Babylon 巴比伦塔 UVA - 437
The Tower of Babylon紫书P269有n种立方体,每种都有无穷多个。要求选一些立方体落成一根尽量高的柱子(可以自行选择哪一条边作为高),是的每个立方体的底面长款分别严格小于它下方立方体的底面长宽。立方体可以旋转,所以一种立方体可以看成三个固定摆法的立方体,即为3*n种立方体中求最长路。#include<iostream>#include<algorithm>#include<cstring>#define mem(a,b) memset(a,原创 2021-07-09 10:29:29 · 111 阅读 · 0 评论 -
Lighting System Design UVA - 11400
Lighting System Design 你的任务是设计一个照明系统。一共有n种灯泡可供选择,不同种类的灯泡必须用不同的电源,但一种灯泡可以共用一个电源。每种灯泡用4给数值表示:电压V,电源费用K,灯泡单价C和所需灯泡的数目L。假设通过所有的灯泡的电流都相同,因此电压高的灯泡功率也大。为了省钱,可以把一些灯泡换成电压更高的另一种灯泡以节省电源的钱(但不能换成电压更低的灯泡)。求最优方案的费用。题目很难懂。举个例子的话假如有三种灯泡(已经按电压升序排列)编号电压电源费用单价数量原创 2021-07-10 10:59:11 · 242 阅读 · 0 评论 -
Tour UVA - 1347
Tour UVA - 1347紫书P269给定平面上n个点的坐(按x递增的顺序给出,x各不相同,且均为正整数),设计一条路线,从最左边的点出发,走到最右边的点后再返回,路径中经过的点横坐标严格递增或递减(紫书第一个图不对),要求除了最左点和最右点外每个点恰好经过一次,且路径总长度(欧几里得距离)最短。一个人向右走在向左走,抽象为两个人都从最左点出发,前往最右点,计算两个人路径和妙啊 。dp[i][j]为一个人在第i个点,另一个在第j个点,且前max(i,j)个点都走过时,还要走的路径...原创 2021-07-09 14:56:32 · 130 阅读 · 0 评论 -
Partitioning by Palindromes UVA - 11584
Partitioning by Palindromes求一串字符的的最小回文串划分的个数简单题,先预处理有哪些回文串,技巧是枚举中心,然后想左右延申,要注意的是回文串的长度有奇数和偶数之分#include<iostream>#include<algorithm>#include<cstring>#define ll long long#define ull unsigned long long#define mem(a,b) memset(a,b,size原创 2021-07-10 11:06:44 · 86 阅读 · 0 评论 -
A Spy in the Metro UVA - 1025
A Spy in the MetroUVA - 1025 紫书p267某城市的地铁是线性的,有n个车站,从左到右编号为1~n。有M1辆列车从第一站开始往右开,还有M2辆列车从第n站开始往左开。在时刻0,Mario从第一站出发,目的是在时刻T会哦见车站n的一个间谍。在车站等车时容易被抓住,所以他决定尽量躲在开动的火车上,让在车站等待的总时间尽量短。列车靠站时间忽略不计,且Mairo身手敏捷,即使两辆方向不同的列车在同一时间靠站,Mairo也能完成换乘。求最少等待时间,无解输出Impossible。在读原创 2021-07-08 21:03:19 · 133 阅读 · 0 评论