摘要: http://www.cnblogs.com/JKAI/p/6947537.html 题解可看jk大神的 网上其实蛮多的 主要看我代码呐 #include<cstdio> #include<cstring> #include<algorithm> using namespace std; const 阅读全文
posted @ 2017-06-07 18:52 友人Aqwq 阅读(174) 评论(1) 推荐(0) 编辑
摘要: http://codeforces.com/problemset/problem/739/C 先上链接 这道题 对于蒟蒻的我来说还是很有难度的 调了很久 对于我的代码 mx2是答案 mx1代表单调 mx2双调 带l,r的代表从哪边开始 剩下的自己加油看吧 不是很长来着 #include<cstdio 阅读全文
posted @ 2017-06-06 14:51 友人Aqwq 阅读(379) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 本随笔写的是第二题...... 这道题方法就是搞乱....因为n较mxa小 所以枚举达到最大上限的点 然后就乱搞 代码看看咯 #include<cstdio> #include<cstring> #include<algorithm> #define LL long long using 阅读全文
posted @ 2017-06-06 10:19 友人Aqwq 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 这道题我写了两种写法 一种利用逆元 a/b%mod=a*c%mod; (c是b的逆元)易得2的逆元就是5~~~04; 一种是矩阵快速幂 利用递推式得出结论 #include<cstdio> #include<cstring> #include<algorithm> using namespace s 阅读全文
posted @ 2017-06-04 21:30 友人Aqwq 阅读(204) 评论(0) 推荐(0) 编辑
摘要: fhqtreap的写法 操作其实都差不多哇 #include<cstdio> #include<cstring> #include<algorithm> using namespace std; const int M=200050; int read(){ int ans=0,f=1,c=getc 阅读全文
posted @ 2017-06-03 14:36 友人Aqwq 阅读(326) 评论(0) 推荐(0) 编辑
摘要: 这道题写法和之前差不多 但是fhqtreap在加点的时候为了同时维护大根堆以及二叉排序树的性质所以插入时也要注意分裂 fhqteap需要判断指针是否为空 不然就会re 这个我调了很久 #include<cstdio> #include<cstring> #include<algorithm> usi 阅读全文
posted @ 2017-06-02 21:13 友人Aqwq 阅读(286) 评论(0) 推荐(0) 编辑
摘要: fhqtreap的速度果然很快 花了时间学了下指针写法 没有旋转 只有分裂以及合并操作 其实还是蛮好写的 #include<cstdio> #include<cstring> #include<algorithm> using namespace std; const int M=50055; in 阅读全文
posted @ 2017-06-02 14:27 友人Aqwq 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 这道题维护区间极差的最小值 只有长度为二的区间有贡献 这个可以尝试画一下 自己想想 这样之后维护的值有 区间最小值 区间最大值 以及区间内长度为二的区间差的最小值 区间大小 点本身的值。 注意要看你维护的区间差在区间左点还是右点 这在查询min的时候很重要 剩下的自己看把 代码不算长的了 虽然有点慢 阅读全文
posted @ 2017-06-02 12:51 友人Aqwq 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 这道题 首先 因为他求的是当前点到根节点的路径和 我们可以将题目转换为括号序列的写法 将点拆为左括号以及右括号 左括号为正 右括号为负 这样题目就变为了求前缀和了 如果一个点是这个点的子树 那么他的左右括号就一定包含在所求区间里 会被抵消掉而不影响结果。 这样我们可以利用dfs序建树 操作为区间加 阅读全文
posted @ 2017-06-01 14:02 友人Aqwq 阅读(256) 评论(0) 推荐(0) 编辑
摘要: #include<cstdio> #include<cstring> #include<algorithm> using namespace std; const int M=100055,inf=1000000000; int read(){ int ans=0,f=1,c=getchar(); 阅读全文
posted @ 2017-05-31 07:41 友人Aqwq 阅读(264) 评论(0) 推荐(0) 编辑