随笔分类 - ---动态规划---
摘要:Tickets Problem Description Conductor is quite a boring profession, as all you have to do is just to sell tickets to the passengers. So no wonder that
阅读全文
摘要:题目连接:hdu_5110_Alexandra and COS 题意: 给你一个图,X代表宝藏,然后有一个船,它的声纳的频率为D,定船到宝藏的距离为Dis=max(abs(x1-x2),abs(y1-y2)),如果D是Dis的约数并且宝藏在船的上方开角45°,那么这个船就能探测到这个宝藏,现在给你q
阅读全文
摘要:题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=3886 题意:这题的题意有点晦涩难懂,大概意思就是给你一个区间,让你找一些满足递增递减条件的数,举个列:/-\,要匹配这个关系,把一个数字分成一列数位,满足先递增,然后相等,然后递减的关系:ie:1233
阅读全文
摘要:题目连接:hdu_4352_XHXJ's LIS 题意:这题花大篇篇幅来介绍电子科大的一个传奇学姐,最后几句话才是题意,这题意思就是给你一个LL范围内的区间,问你在这个区间内最长递增子序列长度恰为K的数有多少个 题解:数位DP+状态压缩,这题首先考虑如何来求数位的LIS,很明显不可能用n*n的方法,
阅读全文
摘要:题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5648 题意:给你n,m 让你求出 for(1-n)for(1-m)gcd(i&j,i|j)的sum 题解:这题正解是枚举子集或者Claris的数位DP,不过这些我都不会,还是觉得简单粗暴的方法比较适合我
阅读全文
摘要:题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5179 题意:给你一个范围,问你漂亮的数有多少个,漂亮的数的定义为 数位高的比数位低的大,并且 数位高的数%数位低的数为0 题解:数位DP,详细看代码,为了方便,我把所有的参数全部设为了状态,这样就不用判
阅读全文
摘要:题目连接:hdu5711 这题是 HDU 女生赛最后一题,TSP+贪心,确实不好想,看了wkc巨巨的题解,然后再做的 题解传送门:Ingress 1 #include<cstdio> 2 #include<queue> 3 #include<algorithm> 4 #define F(i,a,b)
阅读全文
摘要:题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5418 题意:给你n个点,和一些边,找一条路径经过全部的点,并回到起点,问最小的花费是多少, 题解:m<=1e5,n<16,说明有多边,需要处理一下,处理完用floyd跑一下,然后进行状态压缩dp。 1
阅读全文
摘要:题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5691 题意:中文,不解释 题解:设dp[i][j]表示当前状态为i,以第j个数为末尾的最忧解,然后dp下去就行了 1 #include<cstdio> 2 #define F(i,a,b) for(in
阅读全文
摘要:题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5293 被这题打蹦了,看着题解写的,很是爆炸,确实想不到,我用的DFS序+LCA+树形DP,当然也可以写树剖,不过这里DFS序更简单,因为都是对点到根的操作 1 #include<cstdio> 2 #i
阅读全文
摘要:题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=3565 题意:给你一个区间,让你找这个区间内有两个山峰的数的最大和,什么是两个山峰,比如121121 第一个2 和第二个2就是两个峰 题解:求的这个不满足dfs(y)-dfs(x)所以只有用一个上限和一个
阅读全文
摘要:题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=2955 题意:给一个概率p和n个银行,每个银行有一些钱和被抓的概率,问在满足被抓的概率在p以下,抢到的最多的钱是多少 题解:很裸的01背包,不过这里要换成钱的总量当作背包的容量,概率当作价值,维护一个最小
阅读全文
摘要:题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5707 题意:给你三个字符串 a,b,c,问你 c能否拆成a,b,a,b串的每一个字符在c中不能变 题解:当时打再现赛的时候没根据题目的特殊性而在哪xjb搜,艹,设dp[i][j]表示为c的前i个字符可由
阅读全文
摘要:题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=4734 题意:给你一个F(x)的定义,然后给你a,b,问你在0到b包括b有多少个数满足F(x)<=F(a) 题解:dp[i][j]为dp到第i位的和为j的方案 1 #include<cstdio> 2 #
阅读全文
摘要:题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=4507 题意:中文,不解释,注意的是求的是合法数字的平方和,即(a+b+c+……)^2 题解:数位DP,要维护三个值,cnt为合法的个数,sum为这cnt个合法个数的和,sqsum为这cnt个数的平方和d
阅读全文
摘要:题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=3709 题意:给你一个区间,让你找平衡数的个数 题解:设dp[i][j][k]为前i位以第j位为支撑点的力矩和为k的方案数,注意的是0,00,000这些也是平衡数,所以要减掉一个len长度 1 #incl
阅读全文
摘要:题目连接:hdu_3555_Bomb 题意:和2089一样,只是数据大了点,不过道理是一样的 1 #include<cstdio> 2 #include<cstring> 3 #define F(i,a,b) for(__int64 i=a;i<=b;i++) 4 5 __int64 t,n,dp[
阅读全文
摘要:题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=2089 题意:中文,不解释 题解:dp[i][j]表示当前第i位的前一个数为j,然后记忆化dfs,注意的是给的是一个区间,容斥完后要处理大的那个数 1 #include<cstdio> 2 #includ
阅读全文
摘要:题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=3652 题意:给你一个n,为比n小的能整除13并数字中有13的数有多少个 题解:记忆化搜索:记dp[i][j][k][l]为当前为第i位i+1位的数为j,余数为k,是否含有13的数的个数,然后搜索下去就得
阅读全文
摘要:题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=3001 题意:给你N个点,M条边,每个点最多走两次,问走完N个点最短的路程为多少。 题解:注意这题有重边,因为最多走两次,所以要用3进制来压缩状态,处理一下就行 1 #include<cstdio> 2
阅读全文

浙公网安备 33010602011771号