随笔分类 -  51nod

摘要:思路:看到连续区间和就要想到预处理前缀和!然后利用map记录暴力搜索就可以了 1 #include <iostream> 2 #include <queue> 3 #include <stack> 4 #include <cstdio> 5 #include <vector> 6 #include 阅读全文
posted @ 2017-01-18 22:18 Kcl886 阅读(193) 评论(0) 推荐(0)
摘要:思路:f(i,j)表示机器人从左上角到(i,j)的方法数,则f(i,j)=f(i-1,j)+f(i,j-1),这是因为机器人只能走下或走右。模拟一遍可得f(i,j)=C(i+j-2,m-1),由于i,j比较大,所以利用卢卡斯大组合数取膜。 1 #include <iostream> 2 #inclu 阅读全文
posted @ 2017-01-18 16:42 Kcl886 阅读(238) 评论(0) 推荐(0)
摘要:思路:很普通的矩阵快速幂,直接构造就可以了。但是这题贼坑,他所谓的取膜和我们平时说的不一样,负数取膜要变成正的,浪费了我2个多小时一直以为是模板问题。总之垃圾题一道。 1 #include <iostream> 2 #include <queue> 3 #include <stack> 4 #inc 阅读全文
posted @ 2017-01-18 16:27 Kcl886 阅读(213) 评论(0) 推荐(0)
摘要:思路:先将井口处理成递增的序列,然后再二分每个盘子插入的位置。 1 #include <iostream> 2 #include <queue> 3 #include <stack> 4 #include <cstdio> 5 #include <vector> 6 #include <map> 7 阅读全文
posted @ 2017-01-13 23:46 Kcl886 阅读(281) 评论(0) 推荐(0)
摘要:思路:看了很久才知道题意,虽然51nod分类为博弈,但我感觉还是不像。解法已经隐藏在样例中了,无论正还是反,最后的期望都是一样的。设美女正面的概率为p,反面为(1-p)则 p*A-(1-p)*(A+B)/2 = (1-p)*B-p*(A+B)/2,解得:P=(A+3*B)/(4A+4B),最后取下g 阅读全文
posted @ 2017-01-10 01:11 Kcl886 阅读(206) 评论(0) 推荐(0)
摘要:思路:集合Y中两类数存在是不可能合成X的,一类是比X大的数,一类是X的二进制表示中某些位为0,而这些数对应的二进制表示的位的数字是1。先把这两类数字排除掉, 再对处理后的集合Y中的所有数字进行分位统计,最后那个X的二进制表示中为1的位中数字最小的就是答案了。 1 #include <iostream 阅读全文
posted @ 2017-01-10 00:57 Kcl886 阅读(438) 评论(0) 推荐(0)
摘要:思路:先把最左和最右的干掉,剩下的再一起dfs。dfs的时候注意当第cur-1个死了之后(而第cur个不要求必须死)才向后面搜索第cur+1个。 当前的第cur个可以被扔在自己身上的火球,也可被扔在第cur+1个的火球干掉。 1 #include <iostream> 2 #include <que 阅读全文
posted @ 2017-01-09 17:57 Kcl886 阅读(167) 评论(0) 推荐(0)
摘要:思路:依次把x【】数组的元素加入set,再二分出当前入set元素在set中的上界r和下界l,则这段区间能放的最多的战舰数量就由原来的(r-l)/(a+1)减少为(x[i]-l)/(a+1)+(r-x[i])/(a+1), 每次判断加入新元素后能放最多战舰数sum与k的大小即可。 1 #include 阅读全文
posted @ 2017-01-09 13:27 Kcl886 阅读(218) 评论(0) 推荐(0)
摘要:思路:当初做的时候YY了好久一直YY不出来,查了题解发现好多种解法,学了一种最简单的,确实是一道不错的题,以下截图自其它大牛博客。 1 #include <iostream> 2 #include <queue> 3 #include <stack> 4 #include <cstdio> 5 #i 阅读全文
posted @ 2017-01-09 13:01 Kcl886 阅读(242) 评论(0) 推荐(0)
摘要:思路:想了好久都想不到怎么居然是直接模仿二进制进位,最后数下有多少个1即可,真是神奇! 1 #include <iostream> 2 #include <queue> 3 #include <stack> 4 #include <cstdio> 5 #include <vector> 6 #inc 阅读全文
posted @ 2017-01-09 12:50 Kcl886 阅读(245) 评论(0) 推荐(0)
摘要:1 #include <iostream> 2 #include <queue> 3 #include <stack> 4 #include <cstdio> 5 #include <vector> 6 #include <map> 7 #include <set> 8 #include <bits 阅读全文
posted @ 2017-01-09 11:20 Kcl886 阅读(146) 评论(0) 推荐(0)