- 博客(7)
- 资源 (46)
- 收藏
- 关注
原创 UVa 12563 Jin Ge Jin Qu hao(01背包)
题意 你在KTV还剩t秒钟的时间 你需要在n首歌中选择尽量多的歌使得歌的数量最多的前提下剩下的时间最小至少要留一秒给劲歌金曲 所以是一个容量为t-1的01背包 d[i][j]表示恰用j秒时间在前i首歌中最多唱多少首 每个状态有两种选择 唱或不唱第i首歌所以有转移方程d[i][j]=max(d[i-1][j],d[i-1][j-c[i]]+1)#include using
2015-02-07 13:54:46 2015
原创 UVa 116 Unidirectional TSP(DP)
题意 一个n*m的环形矩阵(第一行和最后一行是相邻的) 从第一列任意位置出发 只能往右上,右,右下3个方向走 求走到第m列经过的的最小数字和基础DP 横着的数塔问题#include #define l(x) d[x][j+1]using namespace std;const int N = 105;int n, m, g[N][N], d[N][N], fol[N][N
2015-02-06 22:03:36 923
原创 UVa 1347 Tour(DP)
题意 二维坐标系上有n个点 从第一个点出发经过部分点到达第n个点 再从第n个点回到第一个点 除了第一个点 每个点都经过且仅经过一次 求最短路径长度还是基础的DP 想出状态转移方程就容易了 d[i][j]表示去的时候经过第i个点回来经过第j个点且1~max(i,j)间的点都已经走过 显然d[i][j]=d[j][i] 所以只用考虑i>j的部分 i 第i+1个点要么去的
2015-02-06 20:12:54 838
原创 UVa 1025 A Spy in the Metro(DP)
题意 某城市的地铁有n个车站 编号1到n 有m1辆车向右开 给出m1个从车站1出发的时间 m2辆车向左开 给出m2个从车站n出发的时间 t[i]为火车从第i个车站开到第i+1(或相反)个车站需要的时间 Maria在车站1 她需要恰在时刻T到达第n个车站 求她的最小总车站等待时间基础的多阶段决策DP 令d[i][j]表示时刻j在i号车站剩下的最小总等待时间 每种状态有3种选择
2015-02-06 16:08:26 1929
原创 UVa 714 Copying Books(贪心 二分)
题意 把m数分成k组 使每组数的和的最大值最小 如果有多种分法 靠前的组的和尽量小关键是找出那个最小的最大值 可以通过二分来找出 开始左端点为m个数中最大的数 右端点为m个数的和 若中点能将m个数分为小于等于k组 比它大的肯定都是可以的 中点变为右端点 否则中点变成左端点然后就可以贪心逆向模拟了 从后往前每组选择尽量多的数直到剩下的数等于组数 #include
2015-02-03 19:10:03 1193
原创 UVa 11054 Wine trading in Gergovia(扫描)
题意 有n个村庄 第i个村庄需要买a[i]的酒 a[i]为负时该村庄可卖掉-a[i]的酒 保证所有a[i]的和为0 一个单位的酒从一个村庄运输到相邻村庄的消耗为1 求运输完所有酒需要的最小消耗总消耗最少时 每个需要买的村庄都会找离他最近的可以卖的村庄 容易发现 这种状况下 从第一个村和第二个村庄之间的运输量为abs(a[1]) 第二个村庄和第三个村庄之间的运输量为ab
2015-02-03 10:01:33 919
原创 UVa 11134 Fabled Rooks(贪心)
题意 在n*n的棋盘上的n个指定区间上各放1个'车’ 使他们相互不攻击 输出一种可能的方法行和列可以分开看 就变成了n个区间上选n个点的贪心问题 看行列是否都有解就行 基础的贪心问题 对每个点k选择包含它的最优未使用区间 由于在给k找最优区间时1~k-1的最优区间都已经找好了 所有右界最小的区间肯定是最优区间
2015-02-02 17:19:47 1756
(HDUACM201303版_15)筛选法及预处理(附菜鸟的23个经典错误)
2014-08-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人