
题解-JZOJ
文章平均质量分 68
题解
Azcii
这个作者很懒,什么都没留下…
展开
-
JZOJ 7066. 【2021.4.24 NOI模拟】ehzeux与圆周(DP)
JZOJ 7066. 【2021.4.24 NOI模拟】ehzeux与圆周题目大意圆周上有2∗n2*n2∗n个点,两两相连构成nnn个点对,其中有mmm个点对已经连好,求所有方案下的连通块数量和。当两个点相连或所在线段相交则称之为属于同一个连通块。n,m≤300n,m\le300n,m≤300题解需要发现一个性质,把圆周展开成一条线段后和原来是一样的,并不会影响线段的连通。考虑把每种情况的连通块数量总和,转化为每个连通块出现的次数总和。设fi,jf_{i,j}fi,j为[i,j][i,原创 2021-04-28 22:05:30 · 354 阅读 · 0 评论 -
JZOJ 7049. 2021.04.07【2021省赛模拟】生命游戏(拉格朗日插值+矩形面积并)
JZOJ 7049. 2021.04.07【2021省赛模拟】生命游戏题目大意二维平面网格中初始有nnn个点,每一时刻某一位置存在点当且仅当上一时刻相邻四格中存在点,QQQ次询问,求时刻000到时刻ttt平面上存在的点的总和。n≤100,Q≤106n\le100, Q\le10^6n≤100,Q≤106题解当只有一个点时,手玩一下可以发现,每一时刻ttt存在的点数为(t+1)2(t+1)^2(t+1)2。当有多个点时,坐标(xi+yi)(x_i+y_i)(xi+yi)奇偶性不同的点之原创 2021-04-08 14:59:07 · 280 阅读 · 1 评论 -
JZOJ 7047. 2021.04.07【2021省赛模拟】染色(计数+DP)
JZOJ 7047. 2021.04.07【2021省赛模拟】染色题目大意一个n∗mn*mn∗m的棋盘,一次染色可以把任何一行或任何一条左下-右上方向的对角线上所有格子都染黑,求各种染色方案可以得到的不同最终形态数。n,m≤500n,m\le500n,m≤500题解最终形态比较难统计,可以改为统计不同的染色方案。由于不同的染色方案可能会得到相同的最终形态,所以需要规定一些染色方案为“合法”的以保证不重复统计。可以让每种最终形态对应上唯一一种染色方案。具体的,使最终形态中有整行的必须由整行的原创 2021-04-07 20:49:15 · 251 阅读 · 0 评论 -
JZOJ 7045. 2021.04.05【2021省赛模拟】数学考试(网络流)
JZOJ 7045. 2021.04.05【2021省赛模拟】数学考试题目大意给出nnn个三次函数,其中xix_ixi为第iii个函数的自变量,取值为[li,ri][l_i,r_i][li,ri],另还需满足形如xa≤xb+dx_a\le x_b+dxa≤xb+d的mmm个限制,求∑fi(xi)\sum f_i(x_i)∑fi(xi)的最大值。n,∣li∣,∣ri∣≤100,m≤500n,|l_i|,|r_i|\le 100,m\le 500n,∣li∣,∣ri∣≤100,m≤50原创 2021-04-05 20:36:01 · 419 阅读 · 0 评论 -
JZOJ 7039. 2021.04.01【2021省赛模拟】计数(推式子+DP)
JZOJ 7039. 2021.04.01【2021省赛模拟】计数题目大意给出n,m,xn,m,xn,m,x,定义一个序列的权值为min(l−x,0)min(l-x,0)min(l−x,0),其中lll为最长连续段的长度。求所有长度为nnn且满足ai∈[1,m]a_i\in[1,m]ai∈[1,m]的正整数序列权值之和。x≤n≤106,k≤108x\le n\le10^6,k\le10^8x≤n≤106,k≤108题解首先很重要的一步是拆贡献,$min(l-x,0)=\sum_{i=x+1原创 2021-04-01 22:00:03 · 233 阅读 · 0 评论 -
JZOJ 7036. 2021.03.30【2021省赛模拟】凌乱平衡树(平衡树单旋+权值线段树)
JZOJ 7036. 2021.03.30【2021省赛模拟】凌乱平衡树题目大意给出两棵Treap,大小分别为n,mn,mn,m,每个点的priorityprioritypriority值为子树大小(因此满足大根堆性质),QQQ次修改(修改是永久的),每次单旋一个节点,求修改前和每次修改后后两树合并之后的所有节点深度之和。合并按照Treap的合并方式,左树根为xxx,右树根为yyy时,当sizex≥sizeysize_x\ge size_ysizex≥sizey时以xxx为根,否则反之。1≤n,原创 2021-03-31 16:51:02 · 198 阅读 · 0 评论 -
JZOJ 6085. 【GDOI2019模拟2019.3.26】要换换名字(二分+Trie+二分图匹配)
JZOJ 6085. 【GDOI2019模拟2019.3.26】要换换名字题目大意给出nnn个由小写字母组成的字符串,每个串用它的某个非空子序列替代它,求使得替代后所有串互不相同的最长串最小长度。若不存在则输出−1-1−1。1≤n,len≤3001\le n,len\le3001≤n,len≤300题解先二分答案,给每个串找出长度小于midmidmid的nnn个子序列,如果不足nnn个则找出所有子序列。任意找nnn个即可,因为只要有nnn个就能使得不出现重复。既然已经找出来了每个串替换为什原创 2021-03-31 16:06:03 · 398 阅读 · 0 评论 -
JZOJ 6997. 2021.03.06【2021省赛模拟】排列(最小树形图)
JZOJ 6997. 2021.03.06【2021省赛模拟】排列题目大意ppp为一个111到nnn的排列,令F(p)=∑i=1nminj=1iapi⨁bpjF(p)=\sum_{i=1}^n \min_{j=1}^i a_{p_i}\bigoplus b_{p_j}F(p)=∑i=1nminj=1iapi⨁bpj,求使F(p)F(p)F(p)最小且字典序最小的ppp。n≤50n\le50n≤50题解若选择byb_yby和axa_xax构成一组贡献,则相当于从yyy往xxx原创 2021-03-10 21:38:06 · 283 阅读 · 0 评论 -
JZOJ 6653. 【2020.05.27省选模拟】树(权值线段树)
JZOJ 6653. 【2020.05.27省选模拟】树题目大意一棵以111为根大小为nnn的树,要求父亲编号小于儿子,2n−22n-22n−2个数,可任意分配使它们作为树的边权和每个点的父亲编号,求各种分配下111到nnn路径长度分别为[1,n)[1,n)[1,n)时路径的最大边权和。n≤105n\le10^5n≤105题解树的形态确定后,最大边权和自然为剩余未选的若干个数之和。统计每个数出现的个数cic_ici,求出前缀和,若存在sumi−1<i−1sum_{i-1}<i原创 2021-03-02 21:46:23 · 262 阅读 · 0 评论 -
JZOJ 6652. 【2020.05.27省选模拟】序列(贪心+序列翻转)
JZOJ 6652. 【2020.05.27省选模拟】序列题目大意问给出的NNN个MMM的排列,按从头到尾依次加到序列首或尾的规则,共同能得到的新排列的个数,并给出字典序最小的方案。询问有多组。T≤50,N,M≤1000,∑m≤5000T\le50,N,M\le1000,\sum m\le5000T≤50,N,M≤1000,∑m≤5000题解先加入队列的数位置不好确定,但最后加入的数一定只能再两端,不妨考虑从后往前推。这样一来每个时刻已经构成的排列是一段前缀和一段后缀,记录指针Li,Ri原创 2021-03-02 21:15:07 · 330 阅读 · 0 评论 -
JZOJ 6979. 【2021.02.03冬令营模拟】天各一方(DP)
JZOJ 6979. 【2021.02.03冬令营模拟】天各一方题目大意求nnn个点组成的所有不同连通图中,111到nnn的最短距离之和。n≤400n\le400n≤400题解很关键的一点是,因为是所有连边的方案,所以111到nnn和111到222、111到333……111到n−1n-1n−1本质上都是相同的,所以答案可以转化为111到剩下每个点的最短距离之和再除以n−1n-1n−1。试着把所有的点分层,距离即为它们层数的差值。初始时均在第000层,通过DP使除了111以外所有点下移原创 2021-02-04 09:27:40 · 240 阅读 · 1 评论 -
JZOJ 6974. 【2021.02.01冬令营模拟】联邦解体(拆绝对值+DP)
JZOJ 6974. 【2021.02.01冬令营模拟】联邦解体题目大意长为nnn的原序列中每个数有两个权值Ai,BiA_i,B_iAi,Bi,求保持相对顺序不变的前提下,把原序列分割为两个子序列后所有相邻两项的A,BA,BA,B权值之差的绝对值之和的最大值。n≤106n\le10^6n≤106题解既有绝对值,又要求最大值,考虑到若不取绝对值的话,一定不会比真实答案更优,所以可以去掉绝对值号,而只需保证相邻两项的AAA或BBB对答案的贡献符号相反,注意这里的贡献并不是每个数只贡献一次,而原创 2021-02-04 08:29:41 · 282 阅读 · 1 评论 -
JZOJ 6958. 【2020.01.23冬令营模拟】国内战·剑鬼·魔法阵(环套树+结论)
JZOJ 6958. 【2020.01.23冬令营模拟】国内战·剑鬼·魔法阵题目大意nnn个点构成的若干棵环套树上,两人依次选边,要求不能与已选的构成环,两人分别尽可能最大化/最小化最终的边权和,直到两人都不能选为止,问此时选出的边权和。n≤105n\le10^5n≤105题解这是一道结论题,其实结论很好猜,但不好证。首先,不在环上的边是一定会被选上的,只用考虑环上的边。手玩一下奇环会发现,把边权排序后,两人为了对自己最有利总会对称地选,所以会剩下中间的边没选;而偶环类似地可以猜想,最原创 2021-01-31 20:20:57 · 249 阅读 · 2 评论 -
JZOJ 6957. 【2020.01.19冬令营模拟】板凳(前缀和+二分)
JZOJ 6957. 【2020.01.19冬令营模拟】板凳题目大意长为mmm的序列,初始有若nnn位置为111,其余为000,每次找到最长且靠左的一段全000序列,将该段中间位置修改为111,qqq次询问求第xxx次修改的位置。n,q≤105n,q\le10^5n,q≤105,m≤1014m\le10^{14}m≤1014题解首先要发现一个重要的性质,每个段中间位置修改后会被分成两段,尽管这两段长度可能相差111,但这两段再继续分割下去每一层的长度也只有两种可能的取值,也就是不同的段长最多原创 2021-01-28 21:50:56 · 123 阅读 · 0 评论 -
JZOJ 6944. 【2020.01.07冬令营模拟】球(数学计算)
JZOJ 6944. 【2020.01.07冬令营模拟】球题解发现数据很良心,区间坐标都是非负数,避免了更多的分类讨论。把区间拆开考虑, 发现在对角线y=xy=xy=x两侧都满足每行/列分别单调,如果在某一侧框出一个矩形,可以用等差数列求和直接解决。同时对角线上的可以用平方和计算,但对角边旁构不成矩形的部分如何解决?又发现可以把对角线所经过部分框出一个正方形,分层后每一层都可以用一个最高次为三次的多项式求和计算,直接用立方和公式和平方和公式,那么这样剩下的部分都分居对角线两侧,用上述的方法。至原创 2021-01-07 21:49:06 · 280 阅读 · 0 评论 -
JZOJ 6943. 【2020.01.05冬令营模拟】社会实践(线段树)
JZOJ 6943. 【2020.01.05冬令营模拟】社会实践题解题目的原型还是汉诺塔问题,操作规则和普通汉诺塔问题是一样的,先考虑对于某个单独询问如何计算最优答案。按普通汉诺塔,考虑还原的过程,发现根本不知道下一步该如何移动,无法解决,但如果从还原好的状态倒推,每一步移动都是自然的,初始所有圆盘都在最大圆盘应回到的柱子,然后从大到小,如果第iii个已复位则忽略, 否则将剩下i−1i-1i−1个移到第三根柱,再移动第iii个,步数为2i−12^{i-1}2i−1。这样移动可以保证时刻都是合法的。原创 2021-01-07 21:35:33 · 194 阅读 · 0 评论 -
JZOJ 6931. 【2020.12.26冬令营模拟】T3(二分)
JZOJ 6931. 【2020.12.26冬令营模拟】T3题解考虑每条边的贡献拆开来看,那么式子可以用基本不等式化简求得最大值,但会发现每个点的贡献会算重,可以把每个点的贡献平均分给每条边。但这样子的正确性是无法保证的,不过有20分的特殊数据可以保证其正确性。另外,求最大值可以直接用三分。通过移项可以发现,当答案确定后,每个点拆给与其相连的边的比例系数确定,通过是否能够合理分配和单调性证明后可以直接使用二分解决。代码#include<cstdio>#include<c原创 2021-01-07 21:20:39 · 167 阅读 · 0 评论 -
JZOJ 5395. 【NOIP2017提高A组模拟10.6】Count(拉格朗日插值)
JZOJ 5395. 【NOIP2017提高A组模拟10.6】Count题目大意令f(x)f(x)f(x)表示≤x\le x≤x的正整数中与xxx互质的数的平均数的两倍,求∑i=LRfk(i)\sum_{i=L}^{R}{f^k(i)}∑i=LRfk(i)。L,R≤108L,R\le 10^8L,R≤108,k≤106k\le 10^6k≤106.题解当x≤2x\le 2x≤2时,f(x)=xf(x)=xf(x)=x,因为一旦有r≤xr\le xr≤x与xxx互质,则一定也有x−r≤xx-原创 2020-12-04 16:17:58 · 171 阅读 · 2 评论 -
JZOJ 3481. 【NOIP2013模拟10.23】君と彼女の恋(DP+组合数)
JZOJ 3481. 【NOIP2013模拟10.23】君と彼女の恋题目大意给定N,MN,MN,M,求不同的序列数使得序列所有数之和为MMM,且两两在除以MMM后余数互不相同。N≤1018N\le 10^{18}N≤1018,M≤100M\le 100M≤100.题解暴力可以考虑把mod M\mod MmodM的取值状压,设fi,jf_{i,j}fi,j表示选的数和为iii,mod M\mod MmodM是否出现过的状态为jjj的方案数,转移显然,最后答案要乘个数的阶乘。但这样复杂度原创 2020-12-04 15:42:20 · 257 阅读 · 0 评论 -
JZOJ 6899. 【2020.11.27提高组模拟】第三题(排序+均值不等式)
JZOJ 6899. 【2020.11.27提高组模拟】第三题题解题意可以转化为给定一个序列aaa,求一个由非负数构成的序列bbb,使得∑bi=C\sum b_i=C∑bi=C且∑(ai−bi)2\sum (a_i-b_i)^2∑(ai−bi)2最小。由均值不等式或尝试得出,当所有ai−bia_i-b_iai−bi都相等时,可以使得∑(ai−bi)2\sum (a_i-b_i)^2∑(ai−bi)2最小,但是这样并不能保证每个bib_ibi都是正数,把aia_iai按升序排好原创 2021-01-07 20:11:50 · 181 阅读 · 0 评论 -
JZOJ 6898. 【2020.11.27提高组模拟】第二题(DFS序+线段树)
JZOJ 6898. 【2020.11.27提高组模拟】第二题题解首先分析操作的实质,其实它相当于把某个点连同子树插入到父亲的位置,并将父亲删除,且其余不变。那么fff值的暴力求法则可以不断往父亲上跳,当父亲的子树除去自己的子树外还有黑点时f+1f+1f+1。如果暴力维护这个过程,复杂度是O(n3)O(n^3)O(n3),稍微优化一下可以到O(n2)O(n^2)O(n2),这都不难想到,但是仍旧无法通过。依次考虑每个点iii新加入后的贡献,贡献分两种:1、iii到根节点路径上的点对fif_ifi原创 2021-01-07 20:11:58 · 169 阅读 · 0 评论 -
JZOJ 6897. 【2020.11.27提高组模拟】第一题(最短路)
JZOJ 6897. 【2020.11.27提高组模拟】第一题题解这是一个并不确定复杂度是否正确的解法。看到从若干点出发然后询问多次是否感染,让我想到了从所有初始被感染的点一起跑最短路,最后再处理询问,若询问的时间大于等于被感染的时间则为YES,否则为NO。每一次444操作则对应时间+1+1+1。但是要考虑封城的问题,把每个点封城的若干段时间区间存下来依次按编号、时间排序,注意最后可能有城市直到操作结束都没解封也要算上。在最短路中转移的时候,设当前从xxx转移到yyy,则通过二分找到在disxdi原创 2021-01-07 20:12:05 · 176 阅读 · 0 评论 -
JZOJ 6873. 【2020.11.19提高组模拟】飞翔的鸟(矩阵乘法)
JZOJ 6873. 【2020.11.19提高组模拟】飞翔的鸟题解n,kn,kn,k的数据范围看起来就知道要用矩乘,但障碍的位置是不确定的。如果暴力枚举n−2n-2n−2次障碍的位置,分别计算每种情况障碍左右两边的方案数,再左右相乘起来,每种情况相加求平均数,可以通过部分的数据。这样显然过不了,考虑能否一次做完?其实可以每个位置设两个状态0/10/10/1分别表示是否经过障碍,然后分三种情况,000转移到000,111转移到111,000转移到111,其中前两种可以直接按题意从xxx转移到x原创 2021-01-07 20:12:59 · 332 阅读 · 1 评论 -
JZOJ 6870. 【2020.11.17提高组模拟】ckw的树(树上期望DP+解方程)
JZOJ 6870. 【2020.11.17提高组模拟】ckw的树题目大意求大小为NNN树上每个点随机游走到MMM个标记点中任意一个的期望时间。M,N≤105M,N\leq 10^5M,N≤105.题解暴力做法可以根据题意列出NNN条方程,高斯消元解出每个点的期望,时间复杂度O(N3)O(N^3)O(N3)。这样做每个点的方程中会有它的祖父、父亲、兄弟层(包括自己)、儿子层、孙子层和常数,即为Ek=aEfafak+bEfak+c∑Ebro+d∑Esonk+e∑Esonsonk+fE_k=a原创 2021-01-07 20:12:52 · 296 阅读 · 0 评论 -
JZOJ 6868. 【2020.11.17提高组模拟】数树(容斥+树上背包)
JZOJ 6868. 【2020.11.17提高组模拟】数树题目大意给出一棵大小为NNN的树,树边有向,求∀i∈[1,N)(ai,ai+1)∉Edge\forall i\in[1,N)(a_i,a_{i+1})\notin Edge∀i∈[1,N)(ai,ai+1)∈/Edge的排列方案数。N≤5000N\leq 5000N≤5000.题解题意即任意一条树边的两点不能在排列中按边的指向方向连续出现。不难会想到容斥,假设已经知道了至少有iii条边不合法的方案数sis_isi,则ans原创 2021-01-07 20:12:45 · 330 阅读 · 0 评论 -
JZOJ 6866. 【2020.11.16提高组模拟】路径大小差(点分治+树状数组)
JZOJ 6866. 【2020.11.16提高组模拟】路径大小差题目大意问树上有多少点对之间路径边权max−min=kmax-min=kmax−min=k,kkk为定值。k≤n≤2∗105k\leq n\leq2*10^5k≤n≤2∗105.题解其实这题比较套路,并不难想。关于树上路径计数的问题,一般先考虑点分治能不能实现,发现是可以的。按照一般点分治的套路,找到某个子树重心后,记录每个点到它的路径边权max,minmax,minmax,min,有两种情况,一种是重心为路径的一端,直接原创 2021-01-07 20:12:19 · 263 阅读 · 0 评论 -
JZOJ 6860. 【2020.11.14提高组模拟】鬼渊传说(前缀和+指针)
JZOJ 6860. 【2020.11.14提高组模拟】鬼渊传说题解这题要用到图论中的欧拉定理,即V−E+F=2V-E+F=2V−E+F=2,其中VVV为点数,EEE为边数,FFF为面数(包括整个图形以外的部分),可以用归纳法证明,对任意连通平面图成立。那么在这题里把黑格看成点,可以通过判断欧拉定理是否成立来判断是否只有一个连通块。设四元环(相邻的四格构成的正方形)个数为SSS,显而易见F=S+1F=S+1F=S+1,因为网格图中的面只能是四元环(除了整个图形以外的部分),则有V−E+S=1V-E原创 2021-01-07 20:12:12 · 246 阅读 · 0 评论 -
JZOJ 6840. 【2020.11.5提高组模拟】铲雪(线段树)
JZOJ 6840. 【2020.11.5提高组模拟】铲雪题目大意n∗mn*mn∗m的土地上,每次操作前积雪深度+1+1+1,qqq次操作,把某行或某列积雪清零,或询问两点间积雪深度不超过某个值的最短路。n,m≤106n,m\leq10^6n,m≤106,q≤3∗105q\leq 3*10^5q≤3∗105题解这题整张图n∗mn*mn∗m特别大,直接跑最短路显然不可行,但稍微推一推,发现这题和最短路完全没关系,由于这题操作的特殊性,所以时刻iii时两点(s,t)(s,t)(s,t)和(x,y原创 2020-11-05 21:14:09 · 285 阅读 · 0 评论 -
JZOJ 6841. 【2020.11.5提高组模拟】淘淘蓝蓝之树林(凸包+最短路)
JZOJ 6841. 【2020.11.5提高组模拟】淘淘蓝蓝之树林题目大意n∗mn*mn∗m的图中有一个四联通快,求从给定出发点绕该联通快一圈回到出发点的最小路径长度,该路径八联通。数据保证有解。n,m≤2000n,m\leq 2000n,m≤2000题解题目中出现了绕一圈,如果想最短路相关的算法不知道怎么处理,于是想到了凸包。把中间联通快的外围外的一圈点和给定的出发点一起构出一个凸包,难道这样就做完了?有可能出发点是凹在里面的,所有可能出发点没有经过,那么需要判断如果出发点不在凸包原创 2020-11-05 20:48:53 · 229 阅读 · 0 评论 -
JZOJ 6847. 【2020.11.03提高组模拟】通往强者之路(找规律+转化题意)
JZOJ 6847. 【2020.11.03提高组模拟】通往强者之路题目大意初始编号为i∈[0,n)i\in[0,n)i∈[0,n)的格子上分别有aia_iai砖,每次把第iii格的xxx块砖拿走,放到[max(i+1,n),i+x][max(i+1,n),i+x][max(i+1,n),i+x]上,每格一块,多余的清空,qqq次询问,每次询问操作到格子qiq_iqi时上面的砖块数量。n,q≤105n,q\leq 10^5n,q≤105,qi≤1018q_i\leq10^{18}qi≤101原创 2020-11-04 10:16:49 · 190 阅读 · 0 评论 -
JZOJ 6807. 【2020.10.29提高组模拟】tree(树上差分)
JZOJ 6807. 【2020.10.29提高组模拟】tree题目大意无根树上NNN个点被染成MMM中颜色,确定一个根,使得某个子树内包含所有的颜色且子树的根深度最大,求最大的深度。N≤106N\leq 10^6N≤106,M≤105M\leq10^5M≤105题解不难想到先可以钦定一个根,题中“子树”对应的是有根数中某个子树或整棵树除去某个子树的部分,一种很暴力的想法是设fi,jf_{i,j}fi,j表示以iii为根的子树中jjj出现的次数,枚举儿子转移,如果“子树”对应某个子树,原创 2020-11-01 16:29:17 · 246 阅读 · 0 评论 -
JZOJ 6809. 【2020.10.29提高组模拟】不难题(容斥+DP)
6809. 【2020.10.29提高组模拟】不难题题目大意有KKK个1−N1-N1−N的排列,每次可以挑选一个队列取出队首,但不能连续取出KKK个相同的数,要求取出每个区间[l,r][l,r][l,r]中排列且不能连续取出r−l+1r-l+1r−l+1个相同的数的方案数。N,K≤300N,K\leq 300N,K≤300题解这题可以联想到平面上只能向右向上走,要求到达某个点且有若干个点不能经过的方案数,可以用容斥来做设fif_ifi表示仅仅经过了第iii个不能经过的点的方案数,用总方案原创 2020-11-01 14:55:42 · 1274 阅读 · 6 评论 -
JZOJ 6808. 【2020.10.29提高组模拟】easy(单调栈+线段树)
JZOJ 6808. 【2020.10.29提高组模拟】easy题目大意给一个长度为nnn的序列,求有多少个区间[l,r][l,r][l,r],使得区间排序后相邻两数之差小于111.n≤105n\leq10^5n≤105题解这种题似乎很套路,类似的题不少。先假如没有重复的数,则所有区间满足max−min≥r−lmax-min\geq r-lmax−min≥r−l,当且仅当区间符合上述条件时等号成立,即当max−min+lmax-min+lmax−min+l的最小值为rrr时等号成立,符合原创 2020-11-01 10:51:11 · 455 阅读 · 0 评论 -
JZOJ 6829. 【2020.10.25提高组模拟】异或(DP+线段树)
JZOJ 6829. 【2020.10.25提高组模拟】异或题目大意给出一个长度为NNN的序列AAA,求元素两两异或值不小于XXX的非空子序列个数。N≤300000,0≤Ai,X<260N\leq300000,0\leq A_i,X< 2^{60}N≤300000,0≤Ai,X<260.题解一开始看到“子序列”困扰了很久,但会发现,题目又要求子序列两两满足某种要求,所以就和序列顺序无关了,那么可以把“子序列”看做是“子集”,什么样的子集满足条件呢?能否简化题目限制?结原创 2020-10-28 22:01:35 · 410 阅读 · 0 评论 -
JZOJ 6833. 2020.10.24【NOIP提高A组】T3.justice(DP)
JZOJ 6833. 2020.10.24【NOIP提高A组】T3.justice题目大意有nnn个xxx和mmm个yyy,每次其中kkk个合并成一个,权值变为它们的平均值,求只剩一个数的权值有多少种可能。n,m,k≤3000n,m,k≤3000n,m,k≤3000x,y≤1018x,y≤10^{18}x,y≤1018题解如果x=yx=yx=y,那么答案是111,否则显然xxx和yyy无论是多少,答案都只和n,m,kn,m,kn,m,k有关。直接令x=0,y=1x=0,y=1x=0,y=原创 2020-10-24 22:09:23 · 248 阅读 · 0 评论 -
JZOJ 6818. 【2020.10.07提高组模拟】数列递推(找规律+结论)
JZOJ 6818. 【2020.10.07提高组模拟】数列递推题目大意给出递推式qi=qi−1∗K+qi−2q_i=q_{i-1}*K+q_{i-2}qi=qi−1∗K+qi−2,其中NNN次询问,每次q0,q1,Kq_0,q_1,Kq0,q1,K给出,求以给定集合SSS中的元素作为下表的qsiq_{s_i}qsi的最大和最小值对应的sis_isi,如有多个则最小化sis_isi。N≤3∗105,∣S∣≤105N≤3*10^5,|S|≤10^5N≤3∗105,∣S∣≤105∣q原创 2020-10-08 07:35:37 · 220 阅读 · 0 评论 -
JZOJ 6811. 【2020.10.05提高组模拟】密电(构造)
JZOJ 6811. 【2020.10.05提高组模拟】密电题目大意给出NNN个数两两之和,要求还原这NNN个数,可能有多种方案。N≤500N≤500N≤500题解乍一想爆搜都不好写,复杂度很玄乎的样子,又考虑排序后从两头开始确定,也不好弄。可以直接从左边开始,首先可以确定A1=a1+a2A_1=a_1+a_2A1=a1+a2,A2=a1+a3A_2=a_1+a_3A2=a1+a3,接着枚举Ai=a2+a3A_i=a_2+a_3Ai=a2+a3,于是可以分别解出a1,a原创 2020-10-07 22:22:58 · 190 阅读 · 0 评论 -
JZOJ 4418. 【HNOI2016模拟4.1】Prime的把妹计划(单调栈+线段树)
JZOJ 4418. 【HNOI2016模拟4.1】Prime的把妹计划题目大意给定序列A1..NA_{1..N}A1..N,分别求出QQQ组询问区间[L,R][L,R][L,R]中最长的连续子序列Al..rA_{l..r}Al..r的长度,须满足该子序列中任意元素都在[Al,Ar](Al≤Ar)[A_l,A_r](A_l≤A_r)[Al,Ar](Al≤Ar)或[Ar,Al](Ar≤Al)[A_r,A_l](A_r≤A_l)[Ar,Al](Ar≤Al)中,也就是区间最大/最小值分别原创 2020-09-08 22:10:33 · 220 阅读 · 0 评论 -
JZOJ 3252. 【GDOI三校联考】炸弹(树形DP)
JZOJ 3252. 【GDOI三校联考】炸弹题目Description在一个N行M列的二维网格里,有些格子是空地(用字符‘.’表示),有些格子是障碍物(用字符‘#’表示)。每个空地格子都有一只虫子,虫子不会移动。FJ打算用最少的炸弹把所有的虫子消灭。FJ每次可以选择在一个空地格子(不妨假设是格子a)放置一个炸弹,这个炸弹爆炸后,格子a的虫子会被消灭,假设有另一个空地格子b,如果空地格子b同时满足如下两个条件,那么空地b格子的虫子也会被该炸弹消灭:1.格子a和格子b在同一行或者在同一列。2.格子a原创 2020-08-10 21:43:27 · 276 阅读 · 0 评论 -
JZOJ 6493. 【GDOI2020模拟03.04】迷宫(状压DP)
JZOJ 6493. 【GDOI2020模拟03.04】迷宫题解这道题的题面比较玄学,乍一看还以为是道PJ难度的最短路。。。其实,题目的设定十分有趣,你被放进了迷宫里,只能分清门(A/B/C/D),而不能分清房间(0除外),也就是说,你只知道当前可能所在的房间集合,和整个迷宫的结构,而并不知道具体在哪个房间,不过可以推算每一步可能所在的房间集合,希望最少的步数能保证走出这个迷宫(走出0号房...原创 2020-03-17 21:41:16 · 300 阅读 · 0 评论