bzoj题目
ILoveFujibayashiRyou
退役OIer,不定期更新一些数学问题
展开
-
洛谷3706 & bzoj4820 [SDOI2017]硬币游戏 kmp+高斯消元
题目链接:bzoj传送门 洛谷传送门周末同学们非常无聊,有人提议,咱们扔硬币玩吧,谁扔的硬币正面次数多谁胜利。大家纷纷觉得这个游戏非常符合同学们的特色,但只是扔硬币实在是太单调了。同学们觉得要加强趣味性,所以要找一个同学扔很多很多次硬币,其他同学记录下正反面情况。用H表示正面朝上,用T表示反面朝上,扔很多次硬币后,会得到一个硬币序列。比如HTT表示第一次正面朝上,后两次反面朝上。但扔到什...原创 2019-11-03 16:43:52 · 279 阅读 · 0 评论 -
bzoj4700 适者 CDQ分治+斜率优化毒瘤题
题目链接:传送门对于每个敌方的人形兵器,原创 2019-08-24 19:54:05 · 271 阅读 · 0 评论 -
bzoj4987 Tree 分类讨论+树形背包
题目链接:传送门首先发现所有选出的点一定是一个联通块。考虑怎样排列这个联通块中的点能使答案最小:从这个联通块的直径一端沿着直径走,每次访问一个新的节点就把它除直径上连接的点外所有连接的点都访问一遍,再沿着直径继续走。珂以证明这样走答案是最小的qwq。不难发现除了直径外的所有边都要走两次,直径上的边只用走一次。令dp[i][j][0/1/2]dp[i][j][0/1/2]dp[i][j][...原创 2019-08-24 20:44:18 · 372 阅读 · 0 评论 -
bzoj2287 消失之物 01背包
题目链接:bzoj2287(权限题qwq)一开始看错数据范围了……打了一个极为暴力(O(n2m)O(n^2m)O(n2m))的暴力……暴力代码如下:毒瘤代码1#include<stdio.h>#include<cstring>#include<algorithm>#include<math.h>#define re register i...原创 2019-08-25 15:17:33 · 240 阅读 · 0 评论 -
bzoj3944 sum 杜教筛
题目链接:传送门杜教筛前置技能:莫比乌斯反演 & 狄利克雷卷积杜教筛基础点亮前置技能就珂以发现这是裸题……首先杜教筛要卷积一个函数。先考虑S(n)=Σi=1nφ(i)S(n)=\Large\Sigma\large_{i=1}^{n}φ(i)S(n)=Σi=1nφ(i)的情况:发现有一条式子叫做φ∗I=idφ*I=idφ∗I=id。所以让两边卷积一个III,得到(I∗S)(...原创 2019-08-18 13:39:18 · 211 阅读 · 0 评论 -
bzoj2005 [NOI2010]能量采集 莫比乌斯反演
题目链接:传送门考虑点(x,y)(x,y)(x,y)对答案的贡献:设gcd(x,y)=kgcd(x,y)=kgcd(x,y)=k,x=ak,y=bk.x=ak,y=bk.x=ak,y=bk.若有x′,y′x',y'x′,y′满足(x′,y′)(x',y')(x′,y′)在(0,0)(0,0)(0,0)到(x,y)(x,y...原创 2019-08-26 22:56:57 · 190 阅读 · 1 评论 -
bzoj3930 & 洛谷P3172 [CQOI2015]选数 狄利克雷卷积+杜教筛+快速幂
题目链接:bzoj3930洛谷P3172前置技能:快速幂(雾)杜教筛狄利克雷卷积(莫比乌斯反演)首先把答案表示出来:这里先把LLL和RRR都除以kkk,然后gcd=kgcd=kgcd=k就转化成gcd=1gcd=1gcd=1。ans=Σx1=LRΣx2=LR...Σxn=LR[gcd(x1,x2,...,xn)=1]ans=\Large\Sigma\large_{x_1=L}^R...原创 2019-08-29 22:35:17 · 213 阅读 · 0 评论 -
bzoj3123 & 洛谷3302 [SDOI2013]森林 启发式合并+主席树+并查集
题目链接:洛咕3302bzoj3123小Z有一片森林,含有N个节点,每个节点上都有一个非负整数作为权值。初始的时候,森林中有M条边。小Z希望执行T个操作,操作有两类:Q x y k查询点x到点y路径上所有的权值中,第k小的权值是多少。此操作保证点x和点y连通,同时这两个节点的路径上至少有k个点。L x y在点x和点y之间连接一条边。保证完成此操作后,仍然是一片森林。为了体现程序的在线...原创 2019-09-07 16:01:01 · 198 阅读 · 0 评论 -
bzoj1041 & 洛谷2508 HAOI2008 圆上的整点 数学
题目链接:洛谷2508bzoj1041Description求一个给定的圆(x2+y2=r2)(x^2+y^2=r^2)(x2+y2=r2),在圆周上有多少个点的坐标是整数。Input只有一个正整数n,n<=2000000000n,n<=2000 000 000n,n<=2000000000Output整点个数Sample Input4Sam...原创 2019-09-09 21:44:47 · 279 阅读 · 0 评论 -
bzoj4025 二分图 线段树分治+带权可回滚并查集+前向星
题目链接:传送门Description神犇有一个n个节点的图。因为神犇是神犇,所以在T时间内一些边会出现后消失。神犇要求出每一时间段内这个图是否是二分图。这么简单的问题神犇当然会做了,于是他想考考你。Input输入数据的第一行是三个整数n,m,T。第2行到第m+1行,每行4个整数u,v,start,end。第i+1行的四个整数表示第i条边连接u,v两个点,这条边在start时刻出现,在第...原创 2019-09-10 20:43:52 · 260 阅读 · 0 评论 -
bzoj4444 & 洛谷4155 SCOI2015 国旗计划 贪心、倍增、断环成链
题目链接:bzoj4444洛谷4155DescriptionA国正在开展一项伟大的计划——国旗计划。这项计划的内容是边防战士手举国旗环绕边境线奔袭一圈。这项计划需要多名边防战士以接力的形式共同完成,为此,国土安全局已经挑选了N名优秀的边防战上作为这项计划的候选人。A国幅员辽阔,边境线上设有M个边防站,顺时针编号1至M。每名边防战士常驻两个边防站,并且善于在这两个边防站之间长途奔袭,我们称...原创 2019-09-12 22:19:46 · 416 阅读 · 0 评论 -
bzoj3712 [PA2014] Fiolki 并查集
题目链接:传送门Description化学家吉丽想要配置一种神奇的药水来拯救世界。吉丽有n种不同的液体物质,和n个药瓶(均从1到n编号)。初始时,第i个瓶内装着g[i]克的第i种物质。吉丽需要执行一定的步骤来配置药水,第i个步骤是将第a[i]个瓶子内的所有液体倒入第b[i]个瓶子,此后第a[i]个瓶子不会再被用到。瓶子的容量可以视作是无限的。吉丽知道某几对液体物质在一起时会发生反应产生沉淀...原创 2019-09-13 16:50:46 · 274 阅读 · 0 评论 -
bzoj3133 [Baltic2013]ballmachine 倍增+优先队列
题目链接:传送门题目解析考虑树中没有球的情况:我们一个个把球放进去,共放nnn个球,把第iii个节点的球是第几个球记为dfn[i]dfn[i]dfn[i]。比如样例:把nnn个球放进去,nnn个球分别落到5,8,6,3,7,4,2,15,8,6,3,7,4,2,15,8,6,3,7,4,2,1,称这个排列为掉落顺序。不难发现若掉落顺序靠前的点为空(即没有球),则新的球不珂能掉到掉落顺...原创 2019-09-13 18:35:03 · 310 阅读 · 0 评论 -
bzoj3625 & Codeforces438E 小朋友和二叉树 生成函数+多项式开根+求逆
题目链接:传送门我们的小朋友很喜欢计算机科学,而且尤其喜欢二叉树。考虑一个含有n个互异正整数的序列c[1],c[2],...,c[n]c[1],c[2],...,c[n]c[1],c[2],...,c[n]。如果一棵带点权的有根二叉树满足其所有顶点的权值都在集合c[1],c[2],...,c[n]{c[1],c[2],...,c[n]}c[1],c[2],...,c[n]中,我们的小朋友就会将...原创 2019-10-08 21:38:11 · 216 阅读 · 0 评论 -
bzoj3992 & 洛谷3321 [SDOI2015]序列统计 NTT+快速幂优化dp
题目链接:bzoj3992洛咕3321先考虑一个dp:令dp[i][j]dp[i][j]dp[i][j]表示iii个数,乘积为jjj的方案数。令a[i]a[i]a[i]表示集合SSS中的第iii个数。那么dp[i][j∗k%m]=∑dp[i−1][j]∗v[k]%moddp[i][j*k\%m]=\sum{dp[i-1][j]*v[k]}\%moddp[i][j∗k%m]=∑dp[i−1...原创 2019-10-10 16:13:55 · 226 阅读 · 0 评论 -
bzoj4182 Shopping 购物 点分治+树形多重背包+dfs序+单调队列优化
题目链接:传送门(权限题)大毒瘤QAQ发现买过物品的商店构成一个联通块,所以钦定一个根,让所有买过物品的商店到根的路径上的商店都是买过物品的商店。然后在上面跑树形背包,子状态设计:dp[i][j]dp[i][j]dp[i][j]表示选到iii号节点,已经花了jjj块钱,所能达到的最大喜爱度。用dfs实现的树形dp会TLE,考虑用dfs序来优化:按照dfs序优化的套路,分不选当前节点和选...原创 2019-08-23 20:42:39 · 490 阅读 · 0 评论 -
bzoj1597 & 洛谷P2900 [USACO08]土地征用 斜率优化QWQ
题目链接:bzoj1597洛谷2900洛谷双倍经验QWQ题目大意:FJFJFJ要买下nnn块土地,每块土地有它的宽度和长(高)度w,h.w,h.w,h.土地珂以分组买,每组的价格是组内的最大宽度×最大高度。FJFJFJ请你求出买下所有土地的最小花费。斜率优化dp.dp.dp.发现这个分组比较臭,组内的土地可能不是连续几个,所以考虑怎样调整顺序,让在一组的土地编号只能连续。发现当...原创 2019-08-10 12:07:58 · 219 阅读 · 0 评论 -
bzoj1084 & 洛谷P2331 [SCOI2005] 最大子矩阵 分类讨论+dp
传送门:洛谷 bzojDescription 这里有一个n*m的矩阵,请你选出其中k个子矩阵,使得这个k个子矩阵分值之和最大。注意:选出的k个子矩阵不能相互重叠。Input 第一行为n,m,k(1≤n≤100,1≤m≤2,1≤k≤10)n,m,k(1≤n≤100,1≤m≤2,1≤k≤10)n,m,k(1≤n≤100,1≤m≤2,1≤k≤10),接下来n行描述矩阵每行中的每个元素的分值(...原创 2019-07-25 08:59:45 · 2561 阅读 · 0 评论 -
bzoj1334 & 洛谷P4394 选举 01背包
题目描述NNN个政党要组成一个联合内阁,每个党都有自己的席位数.现在希望你找出一种方案,你选中的党的席位数要大于总数的一半,并且联合内阁的席位数越多越好.对于一个联合内阁,如果某个政党退出后,其它党的席位仍大于总数的一半,则这个政党被称为是多余的,这是不允许的.输入格式第一行给出有多少个政党.其值小于等于300下面给出每个政党的席位数.总席位数小于等于 100000输出格式你的组阁...原创 2019-07-25 14:48:05 · 2603 阅读 · 0 评论 -
bzoj4539 & 洛谷P3248 [HNOI2016]树 主席树+倍增LCA 毒瘤题
题目链接:bzoj4539洛谷3248题目大意:现在有一棵模板树,有一棵大树。大树一开始为模板树。现在给出mmm个操作,每次给出a,ba,ba,b,然后把aaa和它的子树接到bbb上。有qqq次询问,每次给出u,vu,vu,v,要求输出大树上u,vu,vu,v的距离。n,m,q<=105n,m,q<=10^5n,m,q<=105具体细节见题面QWQ...原创 2019-08-05 17:38:23 · 265 阅读 · 0 评论 -
bzoj3932 & 洛谷P3168 [CQOI2015] 任务查询系统 差分+主席树
题目链接:洛谷3168bzoj3932在区间[Si,Ei][S_i,E_i][Si,Ei]内添加一个优先级为PiP_iPi的任务 —— 区间修改查询时刻xxx时前kkk个优先级之和 ——单点查询区间修改,单点查询,因此想到差分。查询前kkk个数之和,想到主席树。差分时,把[Si,Ei][S_i,E_i][Si,Ei]的区间转化为在SiS_iSi处+1+1+1,在EiE_iE...原创 2019-08-05 20:15:21 · 232 阅读 · 0 评论 -
bzoj4753 & 洛谷P4322 [JSOI2016]最佳团体 分数规划+树形dp
题目链接:传送门->洛谷传送门->bzoj题目大意:给出一棵以000为根的树,每个节点有两个信息ai,bia_i,b_iai,bi。其中a0=b0=0a_0=b_0=0a0=b0=0。现在已选000号节点,要再选出KKK个节点,使得Σi=1kaiΣi=1kbi\huge \frac {\Sigma^{k}_{i=1} a_i} {\Sigma^{k}_{i=1}b_i...原创 2019-08-01 21:39:14 · 1367 阅读 · 0 评论 -
bzoj3757 苹果树 树上莫队
题目链接:传送门题目大意:给定一棵nnn个节点的树,每个节点有一个颜色aia_iai。有mmm个询问,每次给出u,v,a,bu,v,a,bu,v,a,b,表示uuu到vvv的路径上,把所有颜色aaa看成颜色bbb,求出有多少种颜色。询问不会修改节点真实的颜色。n<=50000.n<=50000.n<=50000.如果这是一个序列,那么显然是一个无修改...原创 2019-08-06 18:26:17 · 241 阅读 · 0 评论 -
bzoj4241 历史研究 回滚莫队
题目链接:传送门题目大意:给定一个长度为nnn的序列,有QQQ个询问,要求回答区间[l,r][l,r][l,r]内,出现过的权值与其出现次数的积的最大值。n,m<=105n,m<=10^5n,m<=105首先这道题一看就是莫队qwq然后发现如果只有插入操作是很容易的,珂以直接O(nn)O(n\sqrt{n})O(nn)莫队硬搞。然而莫队肯定是要删除的...原创 2019-08-06 21:35:18 · 225 阅读 · 0 评论 -
bzoj1938 & 洛谷P2163 [SHOI2007] 园丁的烦恼 离散化+树状数组
题目链接:bzoj1938洛谷2163题目大意:给定一个矩阵,矩阵内有nnn棵树,给出mmm个询问,每次询问一个矩形里有多少棵树。n,m<=5∗105,xi,yi<=107n,m<=5*10^5,x_i,y_i<=10^7n,m<=5∗105,xi,yi<=107本来以为要用cdqcdqcdq分治,结果发现直接树状...原创 2019-08-09 12:11:54 · 237 阅读 · 0 评论 -
bzoj3262 & 洛谷P3810 陌上花开 CDQ分治+树状数组解决三维偏序
树状数组+CDQ分治解决三维偏序问题原创 2019-08-07 13:58:34 · 231 阅读 · 0 评论 -
bzoj2761 & 洛谷P4305 不重复数字
题目链接:bzoj2761洛谷4305滑稽……一个map判一下重,如果当前这个数字还没出现,就把它加入序列中如果想练一下hash也是可以的……就手打一个hash函数+vector就珂以了……所以……为什么洛谷上是绿题啊?Ps.洛谷上珂以用unordered_map,会快一些,但bzoj貌似用不了qwq毒瘤代码#include<stdio.h>#include<c...原创 2019-08-07 14:12:36 · 305 阅读 · 0 评论 -
bzoj3173 & 洛谷P4309 [TJOI2013]最长上升子序列 LIS+FHQ Treap
题目链接:洛谷4309bzoj3173题目要求动态插入点并求序列LISLISLIS。首先LIS的递推公式:dp[i]=max(dp[j])+1,j<i,aj<aidp[i]=max(dp[j])+1 , j<i,a_j<a_idp[i]=max(dp[j])+1,j<i,aj<ai发现这道题动态插入的点的权值是递增...原创 2019-08-07 14:58:02 · 238 阅读 · 0 评论 -
bzoj4358 permu 回滚莫队
题目链接:传送门序列上的问题?想到莫队。然而这题像bzoj4241 历史研究一样毒瘤,资瓷O(1)O(1)O(1)加入,不资瓷O(1)O(1)O(1)删除。安利一波题解:bzoj4241 历史研究qwq所以像4241一样,需要用到回滚莫队。这里开两个数组l,rl,rl,r,l[i]l[i]l[i]表示加入i时,iii到值域连续段左端有多少个数,r[i]r[i]r[i]表示加入i时,iii...原创 2019-08-07 15:18:33 · 376 阅读 · 0 评论 -
bzoj2726 & 洛谷P2365 [SDOI2012]任务安排 cdq分治+斜率优化
题目链接:bzoj2726洛谷2365洛咕上好像O(n2)O(n^2)O(n2)能过……还没有负数的情况……如果没有负数,就直接大莉上斜率优化就珂以了qwq转移方程是dp[i]=dp[j]+sumT[i]∗(c[i]−c[j])+S∗(c[n]−c[j])dp[i]=dp[j]+sumT[i]*(c[i]-c[j])+S*(c[n]-c[j])dp[i]=dp[j]+sumT[i]∗(c...原创 2019-08-19 13:44:36 · 308 阅读 · 0 评论 -
bzoj3289 Mato的文件管理 莫队+树状数组
题目链接:传送门题目大意:给定一个nnn个数的序列,有qqq个询问,每个询问给出区间[l,r][l,r][l,r],要求输出[l,r][l,r][l,r]区间内逆序对的数量。n,q<=5∗104n,q<=5*10^4n,q<=5∗104容易看出,最小的交换次数=区间逆序对个数(很显然,因为一次交换只能减少一个逆序对)...原创 2019-08-07 18:31:46 · 198 阅读 · 0 评论 -
bzoj1037 [ZJOI2008] 生日聚会 DP
Description 今天是hidadz小朋友的生日,她邀请了许多朋友来参加她的生日party。 hidadz带着朋友们来到花园中,打算坐成一排玩游戏。为了游戏不至于无聊,就座的方案应满足如下条件:对于任意连续的一段,男孩与女孩的数目之差不超过k。很快,小朋友便找到了一种方案坐了下来开始游戏。hidadz的好朋友Susie发现,这样的就座方案其实是很多的,所以大家很快就找到了一种,那么...原创 2019-07-24 21:05:50 · 2602 阅读 · 0 评论