摘要:
D - GCD HDU - 1695 思路: 都 除以 k 后转化为 1-b/k 1-d/k中找互质的对数,但是需要去重一下 (x,y) (y,x) 这种情况。 这种情况出现 x ,y 肯定 都在 min (b/k, d/k) ,所以 奇数 最后 减去 一半 即可。 #include<bits/st 阅读全文
摘要:
D - GCD HDU - 1695 思路: 都 除以 k 后转化为 1-b/k 1-d/k中找互质的对数,但是需要去重一下 (x,y) (y,x) 这种情况。 这种情况出现 x ,y 肯定 都在 min (b/k, d/k) ,所以 奇数 最后 减去 一半 即可。 #include<bits/st 阅读全文
摘要:
F - Tmutarakan Exams 题意 : 从 < = S 的 数 中 选 出 K 个 不 同 的 数 并 且 gcd > 1 。求方案数。 思路 :记 录 一 下 每 个 数 的 倍 数 vector 存 储 ,最后从 2 开始 遍历 一遍每个数 ,从 他的倍数中 挑选 k个 组合数求解。 阅读全文
摘要:
P4781 【模板】拉格朗日插值 证明 :https://wenku.baidu.com/view/0f88088a172ded630b1cb6b4.html http://www.ebola.pro/article/notes/Lagrange 阅读全文
摘要:
https://www.lydsy.com/JudgeOnline/problem.php?id=2655 以上是对 dp 一小部分打的表。dp[ i ] [ j ] 含义为 前 i 个 数 中 选 j 个 的 价 值 总 和 , 则转移 方程为 dp [ i ] [ j ] = dp [ i -1 阅读全文
摘要:
C - Visible Trees HDU - 2841 思路 :被挡住的那些点(x , y)肯定是 x 与 y不互质。能够由其他坐标的倍数表示,所以就转化成了求那些点 x,y互质 也就是在 1 - m 1 - n 中找互质的对数,容斥 求一下即可 #include<bits/stdc++.h> u 阅读全文
摘要:
A - Character Encoding HDU - 6397 思路 : 隔板法就是在n个元素间的(n-1)个空中插入k-1个板,可以把n个元素分成k组的方法 普通隔板法 求方程 x+y+z=10的正整数解的个数。 添元素隔板法 求方程 x+y+z=10的非负整数解的个数。 那么 增加 3 即转 阅读全文
摘要:
HDU - 1028 step 1:初始化第一个多项式 也就是 由 1的各种方案 组 成 的多项式 初始化系数为 1。临时区 temp初始化 为 0 step 2:遍历后续的n - 1 个 多项式 ,第二重 for j 代 表 的 存 储 结 果 的 多 项 式的次数,k 代表 当前 第 i 的 多 阅读全文
摘要:
HDU - 2152 思路 :有上下界的生成函数 。生成函数即母函数,是组合数学中尤其是计数方面的一个重要理论和工具。生成函数有普通型生成函数和指数型生成函数两种, 其中普通型用的比较多。形式上说,普通型生成函数用于解决多重集的组合问题,此处 方案 不同的定义为如果各种水果的数目都相同,则认为这两种 阅读全文
摘要:
排列组合 HDU - 1521 一句话区分指数型母函数和母函数就是 母函数是组合数,指数型母函数是排列数 #include<bits/stdc++.h> using namespace std; #define maxn 12 double ans[maxn],tp[maxn],inv[maxn]; 阅读全文
摘要:
CodeForces - 617E 给n个数, m个询问, 每次询问问你[l, r]区间内有多少对(i, j), 使得a[i]^a[i+1]^......^a[j]结果为k。(注意 i ! = j)维护一个前缀异或值就可以了。要注意的是 区间[l, r], 我们需要将pre[l-1]......pr 阅读全文
|