随笔分类 -  多项式

摘要:B(贪心、fft) 将两数列排序后按照正负分离,最大值与最小值类似 考虑求最大值,对于两数列中同号的部分,显然按照绝对值顺序依次相乘;对于异号部分,需要令绝对值乘积尽可能小,简单列式子后可以得到该部分贡献为倒序卷积,按照不同情况翻转其中一个数列 最小值同理,只需先将其中一个数列翻转,后续步骤类似。 阅读全文
posted @ 2022-10-27 17:31 jack_yyc 阅读(62) 评论(0) 推荐(0)
摘要:hdu1 04 Ball(bitset) 把所有边升序排序后,枚举中间大小的边$e$ 考虑对每个点$i$记录所有$dis(i,j)\le e$的$j$构成的集合$S_i$ 在枚举到边$(u,v,w)$时,以该边为中位数的三角形答案为$S_i \cap \bar{S_j}$ 利用bitset容易维护 阅读全文
posted @ 2022-08-30 21:38 jack_yyc 阅读(33) 评论(0) 推荐(0)
摘要:2019 NWERC(最短路+凸包、线段树二分、智慧题) D. Disposable Switches 显然最终的答案只与经过的边数和经过的最短路径长度和有关 令$dis[x][k]$表示到$x$点经过$k$条边的最短路(因为记录了边数,这个东西可以直接$n^2$预处理 完全不可能的点不容易求,考虑 阅读全文
posted @ 2021-10-27 11:59 jack_yyc 阅读(94) 评论(0) 推荐(0)
摘要:A 先不考虑空间的限制,考虑每次一个字符串转变的情况,需要找到$trie$树上第一个独立于剩余字符串的前缀 则这个前缀即为这次所需的前缀,但需要考虑这个前缀可以替代之前的前缀的情况 新开一个$num$数组记录$trie$树上每个节点在前缀中出现了几次,则每次新增答案为找到节点的$1-num[x]$ 阅读全文
posted @ 2021-08-16 21:25 jack_yyc 阅读(64) 评论(0) 推荐(0)
摘要:A \[ \sum\limits_{i=0}^{n}\sum\limits_{1\le cj\le ai+b}i^pj^q=\sum\limits_{i=0}^{n}\sum\limits_{j=1}^{\lfloor \frac{ai+b}{c}\rfloor}i^pj^q \] 令$F(n)=\ 阅读全文
posted @ 2021-08-16 21:25 jack_yyc 阅读(84) 评论(0) 推荐(0)
摘要:A 数位$dp$ 咕了 B 由于$m$很小,考虑用生成函数表示方案数,设$f_i$表示$i$个物品的生成函数 转移$f_i$时,单独考虑第$i$个物品有三种情况$(不选,s,b)\(,对应价格为\)(0,1,2)$,贡献为$f_{i-1}(1+x+x^2)$ 否则$i$与$i-1$联合考虑,一共四种 阅读全文
posted @ 2021-08-12 21:27 jack_yyc 阅读(51) 评论(0) 推荐(0)
摘要:A 很猛的题 咕了 B 线段树计数 咕了 C 签到题,推个式子,大概是拆成了一些等比的三角形以及面积为等差乘等比的矩形面积和 #include<bits/stdc++.h> #define inf 2139062143 #define ll long long #define db double # 阅读全文
posted @ 2021-08-11 19:51 jack_yyc 阅读(49) 评论(0) 推荐(0)
摘要:A 离谱平衡树题 咕 B 好像更离谱的结论题 C 设$ans_i$表示以$a$串的$i$为起始匹配位置的失配数 则$ans_i=\sum\limits_{j=0}{m-1} [b_j\neq a_{i+j}]$,将$b$串翻转,即有$ans_i=\sum\limits_{j=0}{m-1} [b_{ 阅读全文
posted @ 2021-07-30 19:26 jack_yyc 阅读(60) 评论(0) 推荐(0)
摘要:A 从小到大搜索,对于一个未知状态 若不能一步到达必败态则该状态为新的必败态 搜索跑一下打表即可 #include<bits/stdc++.h> #define inf 2139062143 #define ll long long #define ull unsigned long long #d 阅读全文
posted @ 2021-07-30 17:20 jack_yyc 阅读(308) 评论(0) 推荐(0)
摘要:T1 bzoj 2806 题目大意: 给出$n$个字符串表示模式串,$m$次询问,每次给出一个串 对于一个模式串的子串,我们可以将其称为一个好的串 对于一个给出的串,需要将这个串划分为若干段,使得这些段中好的串的总长度不少于总长的$85%$ 现在要使这个划分方案中最短的好的串的长度最大,输出这个满足 阅读全文
posted @ 2019-04-11 21:15 jack_yyc 阅读(147) 评论(0) 推荐(0)
摘要:题目大意: 求所有n个点的带标号的简单无向图的价值之和 一个带标号的图的价值定义为每个点度数的k次方的和 思路: 枚举每个点的度数,以及选哪些点与其相连,其他的边无所谓,则该点的贡献为$2^{m-n+1}\sum\limits_{i=0}^n \binom{n-1}{i} * i^k $ 由于所有点 阅读全文
posted @ 2019-04-04 12:46 jack_yyc 阅读(190) 评论(0) 推荐(0)
摘要:题目大意: 求$\sum\limits_{i=0}^n \sum\limits_{j=0}^i S2(i,j) \times 2^j \times j!$ 思路: 法1: 首先把斯特林数展开$S2(i,j)=\frac{1}{j!} \sum\limits_{k=0}^j (-1)^k * \bin 阅读全文
posted @ 2019-04-03 16:51 jack_yyc 阅读(111) 评论(0) 推荐(0)
摘要:T1 题目大意: 一棵树有正边权,$Q$次询问,询问$x$与编号在$[l,r]$之间的点的最小距离 思路: 建立点分树,由于在每个分治重心内任意两个点的lca可以看做重心 我们可以预处理出一个点到他点分树上所有的祖先的距离,每个点最多处理$log$个距离 对每个重心维护动态开点线段树,把每个点暴力加 阅读全文
posted @ 2019-03-27 18:56 jack_yyc 阅读(173) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2019-03-26 16:18 jack_yyc 阅读(20) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2019-03-21 08:43 jack_yyc 阅读(67) 评论(0) 推荐(0)
摘要:T1 1e5只龙的故事 题目大意: 一棵树 q次询问 每次询问一条路径上的第$k$小的点的权值(不去重),然后把整个路径上所有点的权值都改成这个值 思路: 好暴力啊 使用树剖线段树暴力维护权值一样的区间 查询的时候开个数组记录所有满足条件的区间 排序后直接查即可 1 #include<iostrea 阅读全文
posted @ 2019-03-16 08:31 jack_yyc 阅读(186) 评论(0) 推荐(0)
摘要:题目大意: 两个环之间的差异度定义为$\sum_{i=1}^n (a_i-b_i)^2$ 可以进行两种操作 对其中一个环加上$c,m \geq c \geq 0$与对环进行旋转 思路: 对其中一个环加上非负整数相当于对于一个环加$c,c\in[-m,m]$ 则设a环转了$j$,则差异度为$\sum_ 阅读全文
posted @ 2019-03-13 09:53 jack_yyc 阅读(107) 评论(0) 推荐(0)
摘要:T1 bishop 题目大意: n个点组成了一些环 在这n个点中等概率选k个点(不能重复) 染了一个点就会染该环上的所有点 求所有点都被染色的概率 思路: 可以设$F_{i,j}$ 表示在$i$个环放$k$个点的方案数即$F_{i,j}=C(i,j)$,$if \space j==0 :F_{i,j 阅读全文
posted @ 2018-12-12 17:43 jack_yyc 阅读(176) 评论(0) 推荐(0)
摘要:【模板】 多项式乘法 学习一波NTT 放弃FFT 1 #include<iostream> 2 #include<cstdio> 3 #include<cstdlib> 4 #include<cmath> 5 #include<algorithm> 6 #include<cstring> 7 #in 阅读全文
posted @ 2018-12-11 15:45 jack_yyc 阅读(246) 评论(0) 推荐(0)