随笔分类 - 记忆化搜索
摘要:time limit per test2.5 seconds memory limit per test256 megabytes inputstandard input outputstandard output One tradition of welcoming the New...
阅读全文
摘要:Time Limit:10s Memory Limit:1024MByteSubmissions:335Solved:126DESCRIPTION There are n coins in a line, indexed from 0 to n-1. Each coin has it...
阅读全文
摘要:Time Limit: 1 second Memory Limit: 128 MB【问题描述】有一个很长的由小写字母组成字符串。为了便于对这个字符串进行分析,需要将它划分成若干个部分,每个部分称为一个单词。 出于减少分析量的目的,我们希望划分出的单词数越少越好。你就是来完成这一划分工...
阅读全文
摘要:time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard output Theater stage is a rectangular field ...
阅读全文
摘要:【题目链接】:http://codeforces.com/problemset/problem/505/C【题意】 一开始你跳一步长度为d; 之后你每步能跳d-1,d,d+1这3种步数; 然后在路上有很多个位置有treasure; 问你,你最多能获得多少个treasure; 最远跳...
阅读全文
摘要:【题目链接】:http://codeforces.com/problemset/problem/743/E【题意】 给你n个数字; 这些数字都是1到8范围内的整数; 然后让你从中选出一个最长的子列; 要求这个子列中各个数字出现的次数的差的绝对值都不超过1; 且如果是相同的数字的话:...
阅读全文
摘要:【题目链接】:http://hihocoder.com/problemset/problem/1048【题意】 【题解】 按从左到右然后从上到下的顺序; 依次枚举每个格子是竖条还是横条; 然后在搜索的时候保证前i-1行全都填满; 记录下这一行和下一行的状态就好了; 2*m个格子;m...
阅读全文
摘要:【题目链接】:http://codeforces.com/contest/793/problem/B【题意】 给一个n*m大小的方格; 有一些方格可以走,一些不能走; 然后问你从起点到终点,能不能在转弯次数不超过2的情况下达到; 【题解】 记忆化搜索写一个; f[x][y][z]...
阅读全文
摘要:【题目链接】:http://codeforces.com/problemset/problem/797/E【题意】 给你一个n个元素的数组; 每个元素都在1..n之间; 然后给你q个询问; 每个询问由p和k构成; 会对p进行 p=p+a[p]+k操作若干次; 你要输出p第一次大于n...
阅读全文
摘要:【题目链接】:http://codeforces.com/contest/768/problem/E【题意】 NIM游戏的变种; 要求每一堆石头一次拿了x个之后,下一次就不能一次拿x个了; 问你结果 【题解】 用二进制来表示哪些数字被用过; 然后写一个记忆化搜索; 从上到下获取1...
阅读全文
摘要:【链接】h在这里写链接【题意】让你在杯子里加糖或加水。(4种操作类型)糖或水之间有一定关系。糖和水的总量也有限制。问你糖水浓度的最大时,糖和糖水的量。【题解】写个dfs就好。每次有4种选择。可以写个记忆化。【错的次数】0【反思】在这了写反思【代码】#include using namespace s...
阅读全文
摘要:【链接】链接【题意】n个人从左到右站在一条直线上。每个人都有一个能力值g[i],然后每个人可以将相邻的一个人打败。然后它的能力值能够增加相应的能力值(就是打败了的那个人的能力值).A能够打败B的条件是g[A]+D>=g[B].n-1次后,只会剩下一个人了。问你最后的那一个人可能是谁。输出所有可能的人...
阅读全文
摘要:【链接】http://acm.hdu.edu.cn/showproblem.php?pid=6148【题意】在这里写题意【题解】先把1..N里面的山峰数字个数算出来->x然后用N减去这个x就好;这类的DP用记忆化搜索写比较好写.参数存是否上升过,是否下降过,以及是否能枚举到9就好了.只要出现从某一位...
阅读全文
摘要:【链接】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...
阅读全文
摘要:【链接】https://cn.vjudge.net/problem/LightOJ-1205【题意】求出L..R范围内的回文个数【题解】数位DP;先求出1..x里面的回文串个数.则做一下前缀和减掉就可以求出L..R之间的了dfs(int start,int cur,bool ok,bool xiao...
阅读全文
摘要:【Link】:【Description】 有一个n(n≤1000)位密码锁,每位都是0~9,可以循环旋转。每次可以让1~3个相邻 数字同时往上或者往下转一格。例如,567890->567901(最后3位向上转)。输入初始状态 和终止状态(长度不超过1000),问最少要转几次。例如,...
阅读全文
摘要:【Link】:【Description】 你能对字符串进行压缩的操作; 即把连续出现的相同的子串改成它出现的次数+这个最基本的字符串的形式; 问你这个字符串最短能被压缩得多短;【Solution】 设f[i][j]表示,i..j这一段最短能压缩得多短; d[i][j]表示i..j...
阅读全文
摘要:【Link】:【Description】 给你一个n*m的格子; 然后里面零零散散地放着葡萄 让你把它切成若干个小矩形方格 使得每个小矩形方格都恰好包含有一个葡萄. 要求切的长度最短; 问最短的切割距离; 【Solution】 记忆化搜索; 先枚举位点竖着切; 再枚举位点横着切 ...
阅读全文
摘要:【Link】:【Description】 在一个r*c的格子上; 求最长的下降路径; 【Solution】 记忆化搜索; f[x][y]表示从(x,y)这个格子往下还能走多远; 因为是严格递增,所以有单调性. 【NumberOf WA】 0 【Reviw】 【Code】#...
阅读全文
摘要:【Link】:【Description】 给你长城上的n个修补点,然后你的位置为x; 你需要依次去这n个点,然后把它们全部修好. 但是修的前后顺序不一样的话,花费不一样. 如果立即把第i个点修好的话,需要c[i]点花费; 每多t秒钟,就要多花费t*d[i]点花费. 你一开始的位置在...
阅读全文