08 2018 档案
摘要:给出几个链接 斯特林数的简单介绍 下降阶乘幂的概念 总结性博客 自然数幂和与斯特林数
阅读全文
摘要:题目链接 题意 : 其实就是要求 分析 : 先暴力将次方通过第二类斯特林数转化成下降幂 ( 套路?) 然后再一步步化简、使得最外层和 N 有关的 ∑ 划掉 这里有个技巧就是 将组合数的表达式放到一边、然后通过组合意义来化简 然后就可以 O( k ^ 2 ) 算出答案了 另外化到后面其实有种产生 这里
阅读全文
摘要:题目链接 题意 : 中文题、点链接 分析 : 有道题是问你不断求前缀和后的结果 Click here 这道题问的是逆过程 分析方法雷同、可参考 Click here 正着做的矩阵是一个下三角 1 0 0 0 1 1 0 0 1 1 1 0 1 1 1 1 结合杨辉三角可得 C(k, 0) C(k+1
阅读全文
摘要:题目链接 题意 : 给定长度为n的数组a,定义一次操作为: 1. 算出长度为n的数组s,使得si= (a[1] + a[2] + ... + a[i]) mod 1,000,000,007; 2. 执行a = s; 现在问k次操作以后a长什么样。 分析 : 这种不断求前缀和的操作、可以考虑构造操作矩
阅读全文
摘要:题目链接 题意 : 给你一棵树、树上的每个点都有点权、之后有若干次问询、每次问询给出一个节点编号以及一个整数 X 、问你以给出节点为根的子树中哪个节点和 X 异或最大、输出这个值 分析 : 看到这种树上异或最值的问题 可以考虑使用 Trie 来解决 首先涉及到子树 我们可以利用 DFS 序来构造出每
阅读全文
摘要:题目链接 题意 : OSU 是一款群众喜闻乐见的休闲软件。 我们可以把 OSU 的规则简化与改编成以下的样子 : 一共有 n 次操作,每次操作只有成功与失败之分,成功对应 1 ,失败对应 0 ,n次操作对应为 1 个长度为 n 的 01 串。在这个串中连续的 X 个 1 可以贡献 X^3 的分数,这
阅读全文
摘要:题目链接 题意 : 中文题、点链接 分析 : 第一道有关概率期望的DP 有个大部分情况下通用的结论 概率正推、期望反推 原因不明、其实是没有查到较好的解释 这题由于有一些取物品的先决条件在这里 而且观察到题目 n 并不是很大 果断选择状压来解决 这题定义 dp[i][j] 到第 i 回合、拿过物品状
阅读全文
摘要:题目链接 题意 : 给出 N 种纸币、并且给出面值、每种纸币的数量可以任选、问你得出来的数在 k 进制下、末尾位的数有多少种可能、输出具体方案 分析 : 纸币任意选择组成的和 可以用一个一次多项式来表示 A1*B1 + A2*B2 + A3*B3 + ... + An*Bn ( A 为面值、B 为数
阅读全文
摘要:题目链接 题意 : 给出一个 n 个元素的环、可以任意选择起点、选完起点后、可以行走 m 步、每次前进 k 个单位、所走到的点将产生正或负贡献、问你一开始得准备多少才能使得初始资金加上在环上获取最大利益不少于给定的 s 分析 : 对于一个环、固定步数下是有循环节的 不同循环节内的节点各不相同 根据裴
阅读全文
摘要:题目链接 题意 : 给出一些数、你可以从左到右对这些数进行三种操作花费 Ai 买入东西、以 Ai 价格卖出你当前有的东西、或者什么都不做、现在问你可以获取的最大利益是多少? 分析 : 和 CF 867E 一模一样 传送门 可以去搜这题的题解、有很多 对于每个元素产生的贡献 可以先算出暂时的最优值 如
阅读全文
摘要:题目链接 题意 : 给出一个哈希表、其避免冲突的方法是线性探测再散列、现在问你给出的哈希表是否合法、如果合法则输出所有元素插入的顺序、如果有多解则输出字典序最小的那一个、如果不合法则输出 -1 分析 : 经过对样例的模拟和观察、可以发现 如果一个元素 A 本应去到的位置 pos 被元素 B 占据、则
阅读全文
摘要:题目链接 题意 : 给出 N 个数、然后问你最多取出多少石子使得在 NIM 博弈中、后手必胜 分析 : Nim 博弈模型,后手必胜当且仅当各个堆的石子的数目的异或和为 0 转化一下、变成最少取多少石子使得异或和为原来所有石子堆的异或和 和背包DP思想很类似、可以考虑 DP dp[i][j] = 到第
阅读全文
摘要:题目链接 题意 : 中文题、点链接 分析 : 直接建 Trie 图、在每一个串的末尾节点记录其整串长度、方便删串操作 然后对于问询串、由于可能有删串操作 所以在跑 Trie 图的过程当中需要拿个栈记录一下路径 跑 Trie 图的意思就是说将问询串字符一个个拿出来 然后一直找当前节点的下一个对应字母的
阅读全文
摘要:题目链接 题意 : 给出 n 个串、然后给出一个问询串、问你对于问询串的每一个前缀、需要至少补充多少单词才能使得其后缀包含 n 个串中的其中一个、注意 '-' 字符代表退格 分析 : 多串的匹配问询自然想到 AC 自动机 或者 构建 Trie 图 首先将 N 个串丢到 Trie 图里面 对于每一个节
阅读全文
摘要:FWT 是求多项式位元算卷积的一种高效方法 最常见的有 or、and、xor 这三种操作 void FWT(LL f[], int n, int op) { int mx = 0; while((1LL<<mx) < n) mx++; for (int i = 1; i <= mx; ++i) {
阅读全文
摘要:FFT 实际是 DFT 的一种快速实现方法 可以将多项式的乘法从 O(n^2) 优化到 O(nlogn) 暂时没有看到很好的科普文章、原理自行百度吧 #define L(x) (1 << (x)) const double PI = acos(-1.0); const int maxn = (1<<
阅读全文
摘要:题意 : 求两个大数相乘的结果 分析 : 可以将数拆成多项式的形式 例如 12345 (1 * x^4) + (2 * x^3) + (3 * x^2) + (4 * x^1) + (5 * x^0) 其中 x == 10 那么两个数的相乘就可以变成两个多项式的相乘 可以利用 FFT 来优化 注意最
阅读全文
摘要:题目链接 题意 : 给你一个a数组和b数组,构造出A[i][j]矩阵(A[i][j] = a[i xor j]) 给出等式 A * x = b ( mod p ) n等于4的时候有: A[0][0]*x[0] + A[0][1]*x[1] + A[0][2]*x[2] + A[0][3]*x[3]
阅读全文
摘要:卡特兰数参考链接 ( 里面有关于其在一些题目的应用 ) 1、前三十项卡特兰数表 [1,1,2,5,14,42,132,429,1430,4862,16796,58786, 208012,742900,2674440,9694845,35357670,129644790, 477638700,1767
阅读全文
摘要:参考链接 C(n, m) 代表 从 n 个物品中取 m 个的方案数 1、n ≤ 1e3 、m ≤ 1e3 利用组合递推公式打表就行了 const int C_maxn = 1e3 + 10; LL Comb[maxn][maxn]; inline void Comb_init() { for(int
阅读全文
摘要:题目链接 分析 : 最简单的想法当然就是去模拟 直接对每个施肥料的操作进行模拟、然后计算贡献 但是这显然会超时、这题需要换一个思维 对于一个土地(也就是二维平面上的一个点)的种类是 T' 如果它被操作了 K1 次、那么如果我能知道所有用 T' 施肥的操作 对这块土地施肥的次数 K2、那么当 K1 =
阅读全文
摘要:题目链接 题意 : 就是让你求个自然数幂和、最高次可达 1e6 、求和上限是 1e9 分析 : 题目给出了最高次 k = 1、2、3 时候的自然数幂和求和公式 可以发现求和公式的最高次都是 k+1 那么大胆猜测幂为 k 的自然数幂和肯定可以由一个最高次为 k+1 的多项式表示 不会证明,事实也的确如
阅读全文
摘要:题目链接 题意 : 分析 : 分析就直接参考这个链接吧 ==> Click here 大体的思路就是 求和顺序不影响结果、故转化一下思路枚举每个最大值对答案的贡献最后累加就是结果 期间计数的过程要用到容斥和多项式求和 ( 利用拉格朗日求即可 ) 具体参考给出的链接 #include<bits/std
阅读全文