小孩召开法的一个尝试
摘要:三年之期已到! 我们考虑一个 DFA,它接受的字符是 < 和 >,每条转移边上有个边权,每个节点有个终止权值。定义一个排列的权值是把它的相邻不等关系抠出来,走过的边权值相乘,最后乘以终点的终止权值。试对 \sum_n \left(\sum_{p\in \pi_ n} w(p)\right) x^n∑
阅读全文
矩阵乘法笔记
摘要:从fibonacci数列开始说起 给定一个nn,求fibonacci数列的第nn项模一个数PP,即F_n \mod PFnmodP。 题目:洛谷1962 较朴素的方法:递推求数 int fibonacci(int n) { static int f[N]; f[1] = 1; for (int i
阅读全文
C++入门
摘要:c语言入门 C语言一经出现就以其功能丰富、表达能力强、灵活方便、应用面广等特点迅速在全世界普及和推广。C语言不但执行效率高而且可移植性好,可以用来开发应用软件、驱动、操作系统等。C语言也是其它众多高级语言的鼻祖语言,所以说学习C语言是进入编程世界的必修课。 hello,world include<s
阅读全文
任务安排4
摘要:类似任务安排1,这题是斜率优化,要维护点(c_i,f_i)(ci,fi)组成的下凸壳(c_ici是费用前缀和,f_ifi是把费用提前计算后的最小代价) 本题的费用和时间都可以为负,所以要动态维护下凸壳并二分查找决策点 算出一个新的f_ifi后,若该决策点在凸壳上方,则忽略此点,否则就要删除
阅读全文
CSP-S2020 T2题解
摘要:一种动物不会影响饲料清单,当且仅当每一位要么为00,要么没有饲料要求,要么已存在的动物中有这一位为11的 由于q_iqi互不相同,那么只有已存在的动物中有第ii位为11的,清单上才有第ii位所需的饲料 可以用unsigned long long存储这些状态,详见代码 O(n+m)O(n+m) #i
阅读全文
CSP-S2020 T1题解
摘要:在一种历法中,日期计算以400年为周期,每400年都有恰好146097天 预处理出400年内的情况,将年份模400即可快速得到答案 几个简化代码的技巧: 对于格里高利历,以1200年1月1日为起始日,rr减去跳过的天数(2159351) 判断历法:r\leqslant2299160r⩽2299160
阅读全文
C++实现MD5
摘要:MD5.h #include<cstdio> #include<cstring> #include<algorithm> #include<cstdlib> #include<iostream> #include<cmath> typedef struct{ unsigned int count[2
阅读全文
题解 P1078 【文化之旅】
摘要:感觉许多题解都是依靠数据水才过的。。 我觉得正解应该是启发式搜索 首先跑一遍无视文化排斥的最短路。容易证明,无视文化排斥最短路的答案一定不大于考虑文化排斥的答案。 这样就可以用一个很强的剪枝了。 如果当前到的这个点的花费加上从这个点出发到终点的无视文化排斥的最短路的花费比答案还要大,那么就没有继续往
阅读全文
NOIP2017解题报告
摘要:D1T1 小凯的疑惑 给两个互素的数aa,bb。求满足条件最大的整数nn使得aa,bb无法通过非负系数线性组合出nn。即 \nexists x, y \in \mathbb N \text{ sat. } ax + by = n 数据范围a, b \leq 10^9a,b≤109 算法1 考虑dp。
阅读全文
新春虐题赛题解
摘要:Product 30分 直接枚举。。不用多说吧。。 100分 蒟蒻{\rm CYJian}CYJian的辣鸡O(NlogN)O(NlogN)做法: 首先,我们用一个常识公式:i \ast j = gcd(i,j)\ast lcm(i,j)i∗j=gcd(i,j)∗lcm(i,j) 然后原式可化为:
阅读全文
T2
摘要:比赛前三天蒟蒻打了一个暴力想要看看数据强度的时候,发现正解挂了!!! 然后调了出题人一个下午终于肝出来了.. (蒟蒻出题人再也不出毒瘤数据结构题了..) 首先我们可以预处理出11~10^7107所有的数能分解的质因子个数.. 这个可以用欧拉线性筛筛出来..虽然这个并不是积性函数.. 我们可以预处理出
阅读全文
T3
摘要:首先我们在这里再写一下这个式子: \prod_{i = A}^{B}\prod^i_{j=1}(\frac{i}{j})^{\lfloor \frac{i}{j} \rfloor}\ (\bmod\ 19260817)i=A∏Bj=1∏i(ji)⌊ji⌋ (mod 19260817) 如果只
阅读全文
T1
摘要:A⩽B⩽5000的算法 没有什么技术含量的吧.. 只需要暴力预处理50005000以内的逆元,然后直接暴力计算答案,记录一个前缀和就可以O(1)O(1)完成询问了. T = 1T=1的算法 首先一个询问求的东西就是这个:\sum_{i=A}^{B}\sum_{j=1}^{i}\lbrace\frac
阅读全文
MC老玩家福利
摘要:思路很简单:从每一个火把或萤石为中心枚举每一个有亮光的地方,标记后统计没有标记的地方的个数即可。。 但是。。 直接暴力写的话。。 少则六七十行, 多则。。(不忍直视的长。。) 所以,为了代码简洁, 我就为大家带来高强度for的自带注释的压缩版本: (当当当当) #include <bits/stdc
阅读全文
基础最短路算法讲解
摘要:最短路问题是什么 给定一个有向带权图和两个点s,t,求一条路径从s到t,并且这条路径的边权和最小。这个问题称为最短路问题 最基础的操作——松弛 设dis[s][t]表示从s到t最短路的边权和,那么它一定满足一个性质:对于任意k,dis[s][t]<=dis[s][k]+dis[k][t],否则显然从
阅读全文
洛谷P4220讲解
摘要:对 T_1T1 进行边分治。每次分治的时候,考虑跨越中心边的两个所有路径。中心边将当前连通块分为左右两个连通块 LL 和 RR。设点 ii 到中心边的距离为 d_1(i)d1(i),那么我们就是要找一对 i\in L,j\in Ri∈L,j∈R,使得 d_1(i) + d_1(j) + dist
阅读全文
洛谷P5024讲解
摘要:利益无关:猫锟不是本题的命题猫。 本题解同样发在 UOJ 算法一 最小权覆盖集 = 全集 - 最大权独立集 强制取点、不取点可以使用把权值改成正无穷或负无穷实现。 接下来就是 https://www.luogu.org/problemnew/show/P4719 了。 O(n\log n)O(nlo
阅读全文
洛谷P4886题解
摘要:点分治神题orzorz 首先考虑O(nm)O(nm)的暴力,就是枚举任意点作为邮递站作根,暴力dfsdfs,求出每组配送的最大代价,记作cost_icosti。 那么对于最优点作根,显然对于任意一条从根开始的链,cost_icosti都是递增的 于是我们可以点分治一下,每次做出当前子树的重心,对
阅读全文
洛谷P3369题解
摘要:由于平衡树不太会写,就写棵线段树凑合着 就开棵值域线段树, 添加/删除,就是在包含改数的区间节点+1/-1 询问某数的排名时,就是经过右节点时,把左边子树的值加上 询问某排名的数时,就是类似求kth时的操作 询问某数前驱后继时,询问某数排名,在对该排名进行访问kth #include<cstdio>
阅读全文
学习笔记:多项式全家桶(鸡腿美味)
摘要:前言 搞完多项式乘法之后,其实我就想把多项式的这一堆都做了,但是鸽了很久都没动。。最近正在一点点啃,笔记都会记在这里。To do list:多项式快速插值 \text{Interpolation}Interpolation \text{Part1 万恶之源——多项式乘法}Part1 万恶之源——多项
阅读全文