随笔分类 - 动态规划
摘要:【题目链接】:http://codeforces.com/problemset/problem/777/E【题意】 让你摆汉诺塔片; 要求在上面的片的外圈大于在下面的片的内圈,且小于下面的片的外圈; 给你n个片; 每个片有属性->外圈半径,内圈半径,高度; 然后让你选择其中的一些片...
阅读全文
摘要:【链接】链接【题意】n个人从左到右站在一条直线上。每个人都有一个能力值g[i],然后每个人可以将相邻的一个人打败。然后它的能力值能够增加相应的能力值(就是打败了的那个人的能力值).A能够打败B的条件是g[A]+D>=g[B].n-1次后,只会剩下一个人了。问你最后的那一个人可能是谁。输出所有可能的人...
阅读全文
摘要:【链接】点击打开链接【题意】在这里写题意【题解】把n个时间离散化一下.对于不是相邻的点,在两者之间再加一个空格就好。这样最多会有1000个位置.则定义dp[i][k][j]表示前i个数字,第i个位置穿或不穿鞋子,总共不穿天数为j的最大值.不难写出程序【错的次数】2【反思】在这了写反思【代码】#inc...
阅读全文
摘要:【链接】http://acm.hdu.edu.cn/showproblem.php?pid=6156【题意】已知函数f(x, k),如果10进制数x在k进制下是个回文数,那么f(x, k)值为k,否则为1现给出l, r, x, y, 求出∑∑f(i, j) (l#define int long l...
阅读全文
摘要:【Link】:【Description】 有n(1≤n≤50)堆盘子,第i堆盘子有hi个盘子(1≤hi≤50),从上到下直径不减。所有盘 子的直径均不超过10000。有如下两种操作。 split:把一堆盘子从某个位置处分成上下两堆。 join:把一堆盘子a放到另一堆盘子b的顶端,...
阅读全文
摘要:【Link】:https://csacademy.com/contest/round-39/task/seven-segment-display/【Description】 0..9各自有一个数字,代表组成它需要几根棍子; 给你k根棍子,然后问你这k根棍子能够组成的最小数字是多少;...
阅读全文
摘要:【Link】:【Description】 直线上有n(n≤10000)个点,其中第i个点的坐标是xi,且它会在di秒之后消失。Alibaba 可以从任意位置出发,求访问完所有点的最短时间。无解输出No solution。 恰好在di秒到的话,不算到 【Solution】 访问到点...
阅读全文
摘要:【Link】:【Description】 有一个n(n≤1000)位密码锁,每位都是0~9,可以循环旋转。每次可以让1~3个相邻 数字同时往上或者往下转一格。例如,567890->567901(最后3位向上转)。输入初始状态 和终止状态(长度不超过1000),问最少要转几次。例如,...
阅读全文
摘要:【Link】:【Description】 给你n个集合; 每个集合都包含一些不同面额的邮票; (每种邮票都当做有无限张) 然后给你一封信上最多能贴的邮票张数S; 问你,哪一个集合的邮票; 能够贴出来从1开始的,最大的连续邮票面额 优先输出小的集合,集合大小一样的话,从大到小排序后,...
阅读全文
摘要:【Link】:【Description】 你能对字符串进行压缩的操作; 即把连续出现的相同的子串改成它出现的次数+这个最基本的字符串的形式; 问你这个字符串最短能被压缩得多短;【Solution】 设f[i][j]表示,i..j这一段最短能压缩得多短; d[i][j]表示i..j...
阅读全文
摘要:【Link】:【Description】 有4堆书; 每本书编号从1..20 每堆书都是N本; 然后每次只能从任意一堆的堆顶拿一本书装到自己的口袋里; 你的口袋最多容纳5本书; 当你的口袋里有两本一样的书的时候,那一对书就归你了; 但是一旦你的口袋装满了,就不能再装书了;游戏停止 ...
阅读全文
摘要:【Link】:【Description】 等价题意: 某人在1..n内选一个数x; 然后让你去猜; 你可以问他是不是在哪个范围里; 每次会告诉你YES或者NO; 问你在最坏的情况下猜出答案需要猜多少次; 且猜的数字大于x的次数不能超过k次. 【Solution】 动态规划. 设f...
阅读全文
摘要:【Link】:【Description】 给你n个人; 有一些人之间有认识关系 a认识b,b不一定认识a 让你把这n个人分成两组 使得这两组中的每一组: 组内的人与人之间都相互认识. 并且,使得两组的人数之差尽可能小; 输出分组的方案; 【Solution】 如果A和B不是相互认...
阅读全文
摘要:【链接】http://acm.hdu.edu.cn/showproblem.php?pid=6148【题意】在这里写题意【题解】先把1..N里面的山峰数字个数算出来->x然后用N减去这个x就好;这类的DP用记忆化搜索写比较好写.参数存是否上升过,是否下降过,以及是否能枚举到9就好了.只要出现从某一位...
阅读全文
摘要:【链接】https://cn.vjudge.net/problem/LightOJ-1205【题意】求出L..R范围内的回文个数【题解】数位DP;先求出1..x里面的回文串个数.则做一下前缀和减掉就可以求出L..R之间的了dfs(int start,int cur,bool ok,bool xiao...
阅读全文
摘要:【链接】http://hihocoder.com/problemset/problem/1554【题意】中文题【题解】DP;设f[i][j][k]表示前i个字符,第一个串已经得到了前j个字符,第二个串已经得到了前k个字符的最少需要字符串长度.如果想坚持f[i-1][j][k]的[j][k]状态的话,...
阅读全文
摘要:【Link】:【Description】 给你一个圆和圆周上的n(3≤n≤40)个不同点。请选择其中的m(3≤m≤n)个,按照在圆 周上的顺序连成一个m边形,使得它的面积最大。 【Solution】 DP; 设f[i][j][k]表示在第i到第j个点之间一定选择了i和j的条件下选...
阅读全文
摘要:【Link】:【Description】 输入正整数n和k(1≤n≤400,1≤k≤10),求长度为n的01串中有多少个不含长度至少 为k的回文连续子串。例如,n=k=3时只有4个串满足条件:001, 011, 100, 110。 【Solution】 状态压缩DP; 我们在做D...
阅读全文
摘要:【Link】:【Description】 输入一个凸n(3≤n≤30)边形体育馆和多边形外的m(1≤m≤1000)个点光源,每个点光 源都有一个费用值。选择一组点光源,照亮整个多边形,使得费用值总和尽量小。如图9-31 所示,多边形ABCDEF可以被两组光源{1,2,3}和{4,5...
阅读全文
摘要:【Link】:http://acm.hdu.edu.cn/showproblem.php?pid=4649【Description】 给你一个由位运算“与”“或”“和”组成的计算表达式; 每个运算符都有p[i]的几率消失; 问你最后这个计算表达式的值的期望是多少? 运算的数字各个位...
阅读全文

浙公网安备 33010602011771号