摘要: 二分答案 推荐 二分一般直接二分答案mid,然后利用题目中的某个限制来检验这个mid是否是正确。 不正确就接着分。 一般框架: 1.跳石头(noip 2015 D2T1) 代码: 2、聪明的质检员(noip 2011) 对于10% 的数据,有 1 ≤n ,m≤10; 对于30% 的数据,有 1 ≤n 阅读全文
posted @ 2018-02-15 14:29 E-Valley 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 1LL LL 代表 long long 。在计算时 *1LL 其实是将 int 转为 long long 然后再赋值给 long long 类型的变量。 ( 这里的 LL 不用 #define LL long long ) long long ans = 0; int x, y, z; ans = 阅读全文
posted @ 2018-02-15 14:17 E-Valley 阅读(272) 评论(0) 推荐(0) 编辑
摘要: ① 第 i 位是1吗? ② 将第 i 位改为 1: ② 将第 i 位改为 0: 阅读全文
posted @ 2018-02-11 20:38 E-Valley 阅读(150) 评论(0) 推荐(0) 编辑
摘要: ①运算符号 and & xor ^ or | not ~ shl << shr >> 和shl相似,a shr b表示二进制右移b位(去掉末b位),相当于a除以2的b次方(取整)。我们也经常用shr 1来代替div 2,比如二分查找、堆的插入操作等等。想办法用shr代替除法运算可以使程序效率大大提高 阅读全文
posted @ 2018-02-11 20:34 E-Valley 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 矩阵快速幂。 ①忘记给矩阵初始化(例子:2017.10.27 T1 坐标系)。 ②忘记在运算过程中%(例子:同上)。 阅读全文
posted @ 2018-02-11 20:33 E-Valley 阅读(109) 评论(0) 推荐(0) 编辑
摘要: DP入门。 如果按照第一种,dp [ 球在谁手里 ] [ 第几轮], 那么就直接一个人过了全部轮数,可想而知,肯定有些状态是转移不到的。 第二种将每一轮里每个人的状态都转移到了。 阅读全文
posted @ 2018-02-11 20:30 E-Valley 阅读(145) 评论(0) 推荐(0) 编辑
摘要: ① 2018-02-09 (20:05:31开始) 原因: 没加 #include <iostream>. ———————————————————————————————————————————————————————————————————— ② 2018-02-10 (1)将某连续一段同时改成一 阅读全文
posted @ 2018-02-11 20:30 E-Valley 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 今天(2017.11.08)开始打板子。 一、读入输出优化 注意:数组类型和负号。 二、并查集 例题传送门 模板: 三、树状数组与线段树 传送门 树状数组:http://blog.csdn.net/qq_21841245/article/details/43956633 biu 树状数组针对的是加上 阅读全文
posted @ 2017-11-09 20:42 E-Valley 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 一、跳石子 无限循环了。 改为: 就跳出了循环。 0 是输出的结果,明显错误。 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 阅读全文
posted @ 2017-11-09 20:31 E-Valley 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 一堆废话 代码 B站视频讲解 首先暴力做法: 分别从两个点开始一层一层地向上跳,直到跳到一样的点,这个点就是他俩的LCA了。 这个做法实在太暴力了,不可取,不可取. . . 有一个不那么暴力的做法——倍增法。 预处理复杂度:O(nlogn) 询问复杂度:O(Qlogn) Q : 询问组数 其(da) 阅读全文
posted @ 2017-10-31 17:18 E-Valley 阅读(343) 评论(0) 推荐(0) 编辑