摘要: 要求第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) 编辑