07 2018 档案
摘要:提交答案题(网络流) 计算一次函数的值实在是太难了,所以为了简化问题,我们计算二次函数。现在给了你$N$个二次函数,第$i$个二次函数的形状为$f_i(x_i) = a_i {x_i}^2 + b_i x_i + c_i , l_i \leq x_i \leq r_i$。同时我们又给了你$M$个限制
阅读全文
摘要:降临 选定点i会有代价$c_i$,如果一个区间j内的点全被选择,就可以获得回报$p_j$。点数和区间个数$j,r[k]=i+1}p_k\rightarrow f[i+1][j]$。 我们发现,除了i+1, j只会转移到j 。因此,考虑使用线段树维护$f[i]$中状态的最大值。转移时,找出所有以i+1
阅读全文
摘要:B君的第九题 对于一个排列$a_1, a_2,\dots,a_n$,如果对于一个i满足$a_{i 1}a_i+1$则称i是一个极大值。我们认为$a_0=a_{n+1}=0$。考虑$1,2,\dots,n$的所有排列,问有多少个排列恰好有m个极大值。输出答案对p取模的结果。$1\le n\le10^9
阅读全文
摘要:提答相关(笔记) 参考资料(matrix67大牛):http://www.matrix67.com/blog/archives/105 P问题:能在多项式时间内解决的问题。 NP问题:能在多项式时间内判定答案是否正确的问题。 NPC问题:是NP问题,并且所有NP问题都可以规约到这个问题。 NP Ha
阅读全文
摘要:形态形成场(矩阵乘法优化dp) 短信中将会涉及前$k$种大写字母,每个大写字母都有一个对应的替换式$Si$,替换式中只会出现大写字母和数字,比如$A→BB,B→CC0,C→123$,代表 $A=12312301231230,B=1231230,C=123$。现在对于给定的替换式,求字符 A 所代表的
阅读全文
摘要:CF70D(动态凸包) 给出q( include include using namespace std; typedef long long LL; const LL maxn=1e5+5; double ox=0, oy=0; struct Point{ LL op, x, y; double
阅读全文
摘要:(multi)set的某些操作 我们可以把multiset当作平衡树用~ 注意,必须定义小于运算符。 s.begin() 返回指向第一个元素的迭代器。 s.end() 返回指向最后元素的后面那个虚拟元素的迭代器。 s.clear() 删除所有元素。 s.empty() 判断容器是否为空。 s.ins
阅读全文
摘要:旅行(树剖+主席树) 给定一个n( include using namespace std; const int maxn=1e5+5, INF=0x3f3f; int n, m, root; struct Edge{ int to, nxt; }e[maxn 2]; int cnte, fir[m
阅读全文
摘要:中国剩余定理 今有物不知其数,三三数之剩二(除以3余2),五五数之剩三(除以5余3),七七数之剩二(除以7余2),问物几何? 这是《孙子算经》中的一个问题,称为“孙子问题”。这个问题的一般解法称为中国剩余定理。具体解法分三步: 1. 找出三个数:从3和5的公倍数中找出被7除余1的最小数15,从3和7
阅读全文
摘要:组合数恒等式 本蒟蒻太弱了。。为了不误导。。这个博客仅供个人使用。。 排列数:在n个元素中选m个元素作为排列,排列数显然是$n^{\underline m}=\frac{n!}{(n m)!}$。 组合数:在n个元素中选出m个作为集合,不同的集合数为$\binom{n}{m}$。由于一个集合对应m个
阅读全文
摘要:数(数学) 给出n( include include using namespace std; typedef long long LL; //////Miller Rabin素数判定////// const LL m=7, A[m]={2, 3, 5, 7, 11, 13, 17}; LL fmu
阅读全文
摘要:线性筛素数(欧拉筛) 欧拉筛为啥是$O(n)$的呢?我们先来看看代码。 c++ include using namespace std; const int maxn=10000000; int n, m, prime[maxn], isnt_prime[maxn], tot; void get_p
阅读全文
摘要:Miller Rabin素数测试 给出一个小于1e18的数,问它是否为质数?不超过50组询问。 "hihocoder" 我是真的菜,为了不误导他人,本篇仅供个人使用。 首先,一个1e18的数,朴素$O(\sqrt{n})$素数判定肯定爆炸。怎么办呢? 我们知道,对于素数p,只要a不是p的倍数,一定有
阅读全文
摘要:咕咕(数位dp+AC自动机) 若一个字符串的字符集合是0~m 1,那么称它为m进制字符串。给出n个m进制字符串$s_i$,每个字符串的权值为$v_i$。对于另一个m进制字符串$S$,设$s_i$在S中的出现次数是$cnt_i$,那么$s_i$对$S$的价值的贡献就是$v_i cnt_i$。因此,$V
阅读全文
摘要:AC自动机 AC自动机比kmp要强,可以解决多模式匹配问题。 假设我们有n个模式串$s_i$,我们可以把它们放到Trie树T中,根据Trie来匹配哪个串被选择(到一个点表示这个点代表的字符被选择了)。但是,有可能遇到失配的情况,失配时该怎么办呢? 如图,假设现在模式串和原串匹配到abcd,原串的下一
阅读全文
摘要:咕咕咕(凸包) 给出两个点集a和b,$|a|,|b|\le1e6$。现在构造点集c,满足$c_{ij}=a_i+b_j$,求点集c的凸包。 由于我之前还没有写过关于凸包的博客,现在来总结一发。 平面向量的叉积 我们都知道,平面向量$a$和$b$的点积是$|a||b|cos\theta$,其中$\th
阅读全文
摘要:三维偏序(陌上花开) 有n个元素,第i个元素有$a_i$,$b_i$,$c_i$三个属性,设$f(i)$表示满足$a_j\le a_i$且$b_j\le b_i$且$c_j\le c_i$的j的数量。对于$d\in[0, n)$,求$f(i)=d$的数量。 偏序关系,意思是并不是任意两个元素之间都有
阅读全文
摘要:快速莫比乌斯变换(FMT) 原文出处: "虞大的博客" 。此仅作蒟蒻本人复习用~ 给定两个长度为n的序列 $a_0, a_1, \cdots, a_{n 1}$和$b_0, b_1, \cdots, b_{n 1}$,你需要求出一个序列$c_0, c_1, \cdots, c_{n 1}$,其中$c
阅读全文
摘要:beijing(数学题) 甲和乙随机进行2n+1场n胜球赛,赌球必须对每场球赛单独押注。由于小明是甲队的铁杆球迷,现在小明希望如果甲最终获胜,那么他获得$2^{2n 1}$元,否则乙队获胜,他失去$2^{2n 1}$元。给出所有比赛的结果,如果你是小明,请问如何对比赛押注,才能使得目标被达成。 如果
阅读全文
摘要:Atcoder CF 2017 TR I 给定一个有n个点,m条边的图,求为每条边定向,使得从1出发和2出发的两个人可以见面的方案数。 先把问题转换成求all 不能见面的方案数。那么可以把图划分成这样一个集合: 用$f[0/1][i]$表示包含0/1的集合i,从0/1出发刚好能到达所有点的方案数 。
阅读全文
摘要:数论函数及其变换 日常%虞大。 数论函数:定义域为正整数,值域为实数的函数。 积性函数:满足$f(ab)=f(a)f(b)\ \ \ (a,b)=1$的数论函数。 完全积性函数:满足$f(ab)=f(a)f(b)$的数论函数。 一些数论函数: $\varepsilon(n)$,当n=1时为1,否则值
阅读全文
摘要:引理 如果任意整数a、b不都为0,则gcd(a,b)是集合A={ax+by:x,y∈Z}的最小正元素。 证明: 设s是A中的最小正元素,也就是s=ax′+by′。 设q=⌊a / s⌋,则 a%s=a−qs=a−q(ax+by)=a(1−qx)+b(−qy) 因此,a%s∈A。由于0≤a % s=s
阅读全文