上一页 1 2 3 4 5 6 7 8 9 ··· 32 下一页
摘要: https://www.luogu.org/blog/codesonic/Mosalgorithm 讲的比较全面 针对例题写 将询问排序 bool cmp(node a,node b){ return pos[a.l]^pos[b.l]?pos[a.l]<pos[b.l]:pos[a.l]&1?a. 阅读全文
posted @ 2019-10-09 20:34 张浦 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 求树上简单路径长度为2019倍数的路径条数 解题思路 : 二维状态dp[i][j]代表i节点的子树上所有点到i的距离为j的个数 考虑两点u, v,两点间的贡献为 ans += dp[u][i] * dp[v][(2019 - i - v + 2019) % 2019]; i = 0 - 2018 此 阅读全文
posted @ 2019-10-08 20:54 张浦 阅读(86) 评论(0) 推荐(0) 编辑
摘要: 解题思路:二分check 代码比较长 所以拿来练习一下py 语法总结: 新建空list arr = [] 定义函数 def (参数1, 参数2, 参数3): return 任意类型列表 python 默认向负无穷取整 整除 // 即为 C++ 的floor 输入一个列表 arr = [int(len 阅读全文
posted @ 2019-10-08 15:27 张浦 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 要求第n项时,直接linear_seq::(gao,n)即可, 不放第0项的话,就是linear_seq::(gao,n-1) #include<bits/stdc++.h> using namespace std; typedef long long ll; const ll mod=1e9+7; 阅读全文
posted @ 2019-10-07 22:31 张浦 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 1.必须逆时针给出多边形顶点 2.面积并 = 面积和 - 面积交 #include <bits/stdc++.h> using namespace std; const int maxn = 300; const double eps = 1e-8; int dcmp(double x){ //精度 阅读全文
posted @ 2019-10-07 22:29 张浦 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 给一合法括号序列,交换xy位置的括号问交换后是否合法 解题思路:左扩1右扩-1做前缀和数组 当且仅到pre[i] >= 0 && pre[n] == 0时合法 考虑交换, 若s[x] == s[y]交换无意义 当前为'('后为')'则xy区间内差分值均要减二 所以区间极小值小于2则非法 当前为')' 阅读全文
posted @ 2019-10-07 22:27 张浦 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 解题思路: 两棵bit分别存线段的开始点和结束点 两个数组存开始点和结束点的线段数量 针对每次询问 用总线段数 - 区间右边的线段(结尾小于等于x) - 区间左边的线段(开头大于等于x) - 当前线段内被完全包含 - 开头结尾在当前区间内即为答案 在线更新询问 复杂度Onlogn /* Zeolim 阅读全文
posted @ 2019-10-07 22:16 张浦 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 求区间x,y内的h-index(最大的h有h篇论文引用量不小于h) 解题思路: 在树上x,y区间内二分答案check #include <bits/stdc++.h> typedef long long ll; using namespace std; const int MAXN = 2e5 + 阅读全文
posted @ 2019-10-07 22:11 张浦 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 解题思路:结合图式求min(C(n, m), 1e18) 如果m > n / 2 则有 m = n - m 计算可得当m大于40的时候C必然大于1e18 所有只用大数暴力求解m较小部分的情况,或者用C++int128边算边约分 ps: py的整数除运算要用// 不然会变为浮点数 mx = 10000 阅读全文
posted @ 2019-10-07 22:05 张浦 阅读(177) 评论(0) 推荐(0) 编辑
摘要: struct lsh { int v[MAXN], vl; lsh() { vl = 0; } void pb(int val) { v[vl++] = val; } //向后加元素 void init() { sort(v, v + vl); vl = unique(v, v + vl) - v; 阅读全文
posted @ 2019-09-15 17:47 张浦 阅读(88) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 32 下一页