上一页 1 2 3 4 5 6 7 8 9 ··· 19 下一页
摘要: 一个n行m列的棋盘,每天可以放一个棋子,问要使得棋盘的每行每列都至少有一个棋子 需要的放棋子天数的期望。dp[i][j][k]表示用了k天棋子共能占领棋盘的i行j列的概率。他的放置策略是,每放一次,就会有四种可能1)增加一行一列2)增加一行3)增加一列4)不变所以他放置的概率就可以求出来,每次放下的... 阅读全文
posted @ 2015-10-08 11:12 Howe_Young 阅读(206) 评论(0) 推荐(0) 编辑
摘要: 对于很大的组合数不能用C(n, m) = C(n - 1, m) + C(n-1, m -1)来求,这里就用到Lucas定理。模板题: hdu3037:模板如下:#include using namespace std;const int maxn = 100010;typedef long lon... 阅读全文
posted @ 2015-09-24 17:51 Howe_Young 阅读(277) 评论(0) 推荐(0) 编辑
摘要: 盗张图:来自http://blog.csdn.net/xuechelingxiao/article/details/39494433题目大意:有一排建筑物坐落在一条直线上,每个建筑物都有一定的高度,给出一个X坐标,高度为0,问X位置能看到的视角是多少度。如图:图一:图二:图一为样例一,图二为样例三,... 阅读全文
posted @ 2015-09-24 16:19 Howe_Young 阅读(295) 评论(0) 推荐(0) 编辑
摘要: 题意比较难懂,一只青蛙过河,它最多一次跳L米,现在河中有石头,距离不等,上帝可以往里加石头,青蛙非常聪明,它一定会选择跳的次数最少的路径。问怎么添加石头能让青蛙最多的次数。输出青蛙跳的最多的次数。考虑对于长度L+1,上帝一定会让青蛙跳两次。那么只需要尽可能的构造L+1就行了。那么就需要求多少个L+1... 阅读全文
posted @ 2015-09-24 11:05 Howe_Young 阅读(349) 评论(0) 推荐(0) 编辑
摘要: 题意比较啰嗦。就是搜索加上一些特殊的条件,比如可以在原地不动,也就是在原地呆一秒,如果有监控也可以花3秒的时间走过去。这种类型的题目还是比较常见的。以下代码b[i][j][x]表示格子i行j列在x时刻有监控照的到。因为只有4个方向,所以只需要时间对4取模就行。具体细节见代码。#include #in... 阅读全文
posted @ 2015-09-23 22:01 Howe_Young 阅读(431) 评论(0) 推荐(0) 编辑
摘要: 题意:给定两个圆环,求两个圆环相交的面积。思路:由于圆心和半径不一样,分了好多种情况,后来发现只要把两个圆相交的函数写好之后就不需要那么复杂了。两个圆相交的面积的模板如下:double area_of_overlap(point c1, double r1, point c2, double r2)... 阅读全文
posted @ 2015-09-23 19:41 Howe_Young 阅读(319) 评论(0) 推荐(0) 编辑
摘要: 题意:给定n个狼的战斗力,并且每个狼的战斗力还需要加上相邻的两个狼的额外的攻击力。当把这个狼杀死之后,它的额外的战斗力就不会给其它相邻的狼加了。每杀死一个狼,它就受到和狼攻击一样大的伤害。求杀死所有的狼最小受的伤害。思路:区间dp,dp[i][j]表示从i到j最小的伤害,考虑[i, j]当中的第k个... 阅读全文
posted @ 2015-09-22 22:07 Howe_Young 阅读(285) 评论(0) 推荐(0) 编辑
摘要: 题意:给定n个数,从中分别取出0个,1个,2个...n个,并把他们异或起来,求大于m个总的取法。思路:dp,背包思想,考虑第i个数,取或者不取,dp[i][j]表示在第i个数时,异或值为j的所有取法。dp[i][j] = dp[i - 1][j] + dp[i - 1][j ^ a[i]]);其中d... 阅读全文
posted @ 2015-09-22 22:00 Howe_Young 阅读(245) 评论(0) 推荐(0) 编辑
摘要: 转载至http://www.renfei.org/blog/introduction-to-cpp-string.html运算符重载+ 和 +=:连接字符串=:字符串赋值>、>=、>:输出、输入字符串注意:使用重载的运算符 + 时,必须保证前两个操作数至少有一个为 string 类型。例如,下面的写... 阅读全文
posted @ 2015-09-20 20:07 Howe_Young 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 题意:求【1,n】当中包含49的一共有多少个数字?思路:用dp[i][0]来表示 数字位数小于等于i并且不包含49的数字个数,之所以说小于等于而不是严格等于因为有可能有前导零。dp[i][1]表示 数字位数等于i 并且开头为9,不含“49” 的个数。dp[i][2] 表示数字位数小于等于i并且包含“... 阅读全文
posted @ 2015-09-15 20:44 Howe_Young 阅读(198) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 19 下一页