题目链接:uva 10844 - Bloques
题目大意:给出一个n,表示有1~n这n个数,问有多少种划分子集的方法。
解题思路:递推+高精度。
1
1 2
2 3 5
5 7 10 15
15 20 27 37 52
dp[i][j]=dp[i?1][j?1]+dp[i][j?1]dp[i][0]=dp[i?1][i?1]ans[i]=dp[i][i]
...
分类:
其他好文 时间:
2014-06-28 08:24:45
阅读次数:
235
题目链接:uva 12508 - Triangles
in the Grid
题目大意:给出n,m,A和B,要求计算在(n+1)?(m+1)的矩阵上,可以找出多少个三角形,面积在AB之间。
解题思路;首先枚举矩阵,然后计算有多少个三角形以该矩阵为外接矩阵,并且要满足体积在AB之间。然后对于每个矩阵,要确定在大的范围内可以确定几个。
枚举矩阵的内接三角形可以分为三类:
1.三...
分类:
其他好文 时间:
2014-06-28 07:04:02
阅读次数:
339
题目链接:Codeforces 439E Devu and Birthday Celebration
题目大意:给出q,表示询问的次数,每次询问有n和f,问有多少种分类方法,将n分成f份,并且这f份的最大共约数为1.
解题思路:如果不考虑说最大共约数为1的话,那么问题很简单,就是f个数的和为n的种数C(f?1n?1).所以我们就尽量将问题转化成说f数的和为s的子问题。用容斥原理,总的可...
分类:
其他好文 时间:
2014-06-28 07:02:46
阅读次数:
278
题目链接:uva 10593 - Kites
题目大意:给出一个n*n的图,表示一张纸板,问有多少种方法做成风筝,风筝必须是正方形或者是菱形,并且不能有洞。
解题思路:分正方形和菱形两种情况讨论:
正方形,dp[i][j]表示以i,j为右下角的正方形
dp[i][j]=min(dp[i?1][j],dp[i][j?1])
并且如果黄色部分也为'x'的话,dp[i][j...
分类:
其他好文 时间:
2014-06-28 06:59:32
阅读次数:
276
题目链接:hdu 4499 Cannon题目大意:给出一个n*m的棋盘,上面已经存在了k个棋子,给出棋子的位置,然后求能够在这种棋盘上放多少个炮,要求后放置上去的炮相互之间不能攻击。解题思路:枚举行放的情况,用二进制数表示,每次放之前推断能否放下(会不会和已经存在的棋子冲突),放下后推断会不会互相攻...
分类:
其他好文 时间:
2014-06-27 20:22:01
阅读次数:
137
题目链接:bnu 34982 Beautiful Garden
题目大意:给定一个长度为n的序列,问说最少移动多少点,使得序列成等差序列,点的位置可以为小数。
解题思路:算是纯暴力吧,枚举等差的起始和中间一点,因为要求定中间一点的位置,所以这一步是o(n3);然后用o(n)的算法确定说需要移动几个来保证序列等差。
#include
#include
#include...
分类:
其他好文 时间:
2014-06-26 14:05:25
阅读次数:
262
HDU 4336 Card Collector(动态规划-概率DP)
题目大意:
有n个卡片,你现在买一包方便面,没包方便面出现其中一个卡片的概率为 p[i] ,问你集齐一套卡片需要的张数的数学期望。
解题思路:
概率DP,用位进制0表示这个卡片有了,1表示这个卡片还没有,那么 例如 “3” 用二进制表示 “1 1” 那么 数组 dp[3] 记录的就是 1号卡片和2号卡片都有的情况集齐一套卡片需要的张数的数学期望。
dp[sum]= ( 1+sum { dp[ sum + (1<<j )] *p[j] ...
分类:
其他好文 时间:
2014-06-26 08:04:18
阅读次数:
377
POJ 2151 Check the difficulty of problems (动态规划-概率DP)
题目大意:
有 M 道题目 T 支队伍,N表示 最好 的队 至少要做出N题 ,紧接下来T行M列,表示某队做出某题 的概率为p ,问你每支队至少做出1题,最好的队至少做出N题的概率是多少?
解题思路:
一题动态规划的题, 既然最好的队至少做出N题,那么用二维记录,DP [t][f] 记录还剩 t 支队及是否出现超过N题的事件的概率。如果当前这支队伍做出超过N题,那么f置为1,否则还是f。弹了两遍,...
分类:
其他好文 时间:
2014-06-26 07:11:03
阅读次数:
190
题目链接:bnu 34895 Elegant String
题目大意:给定n和k,表示有一个长度为n的序列,序列中的元素由0~k组成,问说有多少个串满足不包含0~k的全排列。
解题思路:矩阵快速幂,根据dp[i][j]表示说第i为有j个相同,写出递推式,根据递推式求出矩阵。
#include
#include
typedef long long ll;
const ll MOD...
分类:
其他好文 时间:
2014-06-26 06:54:09
阅读次数:
205
题目链接:bnu 34981 A Matrix
题目大意:假定有一序列,按照题目中给定的算法构造出一张二维表,现在题目给定一张二维表,要求求出序列,要求序列的倒置的字典序最大。
解题思路:构造,对于每一层来说,一定是递增的,根据算法可以得出;并且一个数被换到下一行,一定是因为有序列后面有小于自己的数,所以每一层从最后一个数开始匹配,找到上一层中比自己小的最大数字,假定是该数导致当前数被...
分类:
其他好文 时间:
2014-06-26 06:44:30
阅读次数:
294