摘要:
luogu P4248 [AHOI2013]差异 链接 "luogu" 思路 $\sum\limits_{1 define int long long using namespace std; const int N=1e6+7; int n,c[N=1; i) add(s[i] 'a',i); f 阅读全文
摘要:
luogu P3975 [TJOI2015]弦论 链接 "bzoj" 思路 建出sam。 子串算多个的,统计preant tree的子树大小,否则就是大小为1 然后再统计sam的节点能走到多少串。 然后就可以在sam的贪心的走了。 代码 阅读全文
摘要:
cf1191 解题报告 A 简单模拟 脑内算出来让计算机输出 B 细节模拟 脑内算出来让计算机输出。wa了几发、、、 E 博弈 咕咕咕 F 数据结构 离散化后,枚举a的位置。 然后考虑一行的贡献。 把此行及其以上的点压缩到数轴上。 贡献显然产生在有此行的点的区间内,计算出来区间个数就是此行的贡献。 阅读全文
摘要:
bzoj3676 [Apio2014]回文串 SAM+树上倍增 链接 "bzoj" "luogu" 思路 根据manacher可以知道,每次暴力扩展才有可能出现新的回文串。 所以推出本质不同的回文串个数是O(n)级别的。 每次查询一个串出现的个数。 建立出parent树,一个串出现的个数就是对应pa 阅读全文
摘要:
cf1187解题报告 "cf" A 去掉都有的,剩下的取最大值+1 C 1的区间是相同的个数,能降就降,最后check。 wrong了几发:先n^2判断包含判断NO,然后直接YES,显然是错的。 cpp include using namespace std; const int N=1e5+7; 阅读全文
摘要:
cf1189div2解题报告 "codeforces" A 答案要不是一串要不就是去掉最后一个字母的两串 cpp include define ll long long using namespace std; const int N=107; int a[N define ll long long 阅读全文
摘要:
链接 "luogu" 模板一 上下利用斜率求凸包然后合并。 cpp include using namespace std; const int N=10005; const double eps=1e 10,inf=0x3f3f3f3f3f3f3f3f; int n,stak[N],top; st 阅读全文
摘要:
poj2398 Toy Storage 链接 "poj" 题目大意 这道题的大概意思是先输入6个数字:n,m,x1,y1,x2,y2。n代表卡片的数量,卡片竖直(或倾斜)放置在盒内,可把盒子分为n+1块区域,然后分别用0到n表示,m代表玩具的个数,(x1,y1)代表盒子的左上顶点坐标,(x2,y2) 阅读全文
摘要:
最小圆覆盖 首先 没错,我是个蒟蒻。 "luogu" 流程 随机增量 random_shuffle. 打乱顺序,防止毒瘤。 三点共圆 好像这是解析几何的方法。 就是列出方程。 (x1x)2+(y1y)2=r2 $$ (x2 x)^{2}+(y2 y)^{2}=r^{ 阅读全文
摘要:
bzoj4501: 旅行 链接 "bzoj" 思路 我居然一上来就的去重边,我tm真可爱。 如果没有修改的话就是一个拓扑dp。 f[u]=∑f[v]+1numson 修改的话a[i]表示这个边要不要。 $f[u]=\frac{\sum (f[v]+1) a[i]}{\su 阅读全文
摘要:
链接 [cf]http://codeforces.com/contest/1175/problem/F) 思路 当1在1的位置做dp[i]为i的子树所有的方案。 一条性质是i的子树所占圆上的位置一定一段连续的。 那f[i]的方案就是$(son[i]+(i!=1))!\prod\limits_{x 阅读全文
摘要:
链接 "bzoj" 思路 首先n∑i=1n∑j=1j∑k=imax(ak)可以用单调队列求解。 "参见" ? 求解此题目,我们分治。计算[l,mid]对[mid+1,r]的贡献。 我们从后向 阅读全文
摘要:
链接 "bzoj" 思路 cdq入门题,拆成4个矩阵,然后cdq。 代码 cpp / Problem: 1176 User: gryz2016 Language: C++ Result: Accepted Time:2652 ms Memory:13012 kb / include using na 阅读全文