思维妙题
文章平均质量分 74
Jozky86
这个作者很懒,什么都没留下…
展开
-
CF79D Password(P3943 星空)
CF79D Password(P3943 星空)题意:你有 n 个灯泡,一开始都未点亮。同时你有 l 个长度,分别为 a1∼ala_1∼ a_la1∼al每次你可以选择一段连续的子序列,且长度为某个 aia_iai,并将这些灯泡的明灭状态取反。求最少的操作次数,使得最后有且仅有 k 个位置是亮的,这些位置已经给定,为 x1∼xkx_1 \sim x_kx1∼xk1<=k<=101<=n<=100001<=l<=100题解:k小于等于10,这么原创 2021-10-19 17:24:22 · 84 阅读 · 0 评论 -
CF1497D Genius
CF1497D Genius题意:n个问题从i到n编号,第i个问题给出的ci=2i,tagi,sic_i=2^i,tag_i,s_ici=2i,tagi,si解决问题i后解决问题j条件是:IQ<|ci−cjc_i-c_jci−cj|,同时获得|si−sjs_i-s_jsi−sj|分问题解决得次数和顺序不受限制一开始IQ=0,求最高可获得得分数内存限制31.25MB,大致可以开1e7的数组题解:很明显动态规划,按照一般思路设dp[i][j]:上一次是第i个问题,本次是第j个原创 2021-10-12 22:22:02 · 121 阅读 · 0 评论 -
E - Flow Gym - 102471E
E - Flow Gym - 102471E题意:n个点,m条边,从点1到点n有k条相同长度的路径,每个边都有对应的容量,你可以进行任意次操作,每次将一个边的容量-1,将另一个边的容量+1,问最少操作多少次可以使得跑最大流的结果最大题解:很容易发现我们可以直接计算出最大流的最大值,因为我们有所有边的容量,极端操作我们可以将所有边的容量全部分配到一条路上,也就是最大流的最大值sum=所有流量综合一条路径的长度sum=\frac{所有流量综合}{一条路径的长度}sum=一条路径的长度所有流量综合如果原创 2021-10-07 21:38:41 · 123 阅读 · 0 评论 -
CF1479C Continuous City
CF1479C Continuous City题意:给定 L, R. 构造一个有向带权图, 其中点数不大于 32, 且所有边都是从较小的点指向较大的点. 假设这个有向图有 n 个点, 你需要保证从 1到n 的所有路径的权值都在 [L, R]内且不存在 x∈[L,R], 使得不存在或存在多于一条从 1 到 n 的路径权值为 x, 或者断言这是不可能的.题解:点数不超过32,其实就在往二进制的方向引,但是想了半天也没头绪看了海量题解,终于悟出一些参考文章首先无论如何都有解,log2(1e6)=19原创 2021-10-03 19:09:05 · 156 阅读 · 0 评论 -
CF1458C Latin Square
CF1458C Latin Square题意:T 组测试数据,每次给一个 n×nn\times nn×n 的矩阵,每行每列都是个 1→n1\to n1→n 的排列。有 m 次操作,如果是 UDLR 就是要把整个矩阵每行/每列往一个方向循环移动一格。如果是 IC,就是把矩阵每行/每列变成原来的逆排列。求最后的矩阵。逆排序定义:一个序列p1,p2,....,pnp_{1},p_{2},....,p_{n}p1,p2,....,pn的逆排序是q1,q2,...qnq_{1},q_{2},...q_{原创 2021-10-02 16:30:37 · 99 阅读 · 0 评论 -
CF1305F Kuroni and the Punishment
CF1305F Kuroni and the Punishment题意:给定 n 个数。每次可以选择将一个数 +1 或 -1 。求至少多少次操作使得整个序列都是正数且全部元素的 gcd>1 。n<=2e5,ai<=1012n<=2e5,a_{i}<=10^{12}n<=2e5,ai<=1012题解:首先不难想到,我们可以让所有数变成偶数,这样gcd为2,这样的话,每个数的操作次数小于等于1,这是答案的上界n,也就是最后的答案只会比n优,不可能比n劣由上原创 2021-09-30 22:42:02 · 106 阅读 · 0 评论 -
J Red-Black Paths(ICPC网络赛第一场)
J Red-Black Paths(ICPC网络赛第一场)题意:有n个点,m次操作,有三种操作:1 u v:从u向v建一个有向边2 u:将点u染成红色3 u: 将点u染成黑色4 查询最新生成的红黑边的异或值红黑边的值为:∑1<=i<=length(path)ni∗i\sum_{1<=i<=length(path)}n_{i}*i∑1<=i<=length(path)ni∗i题解:代码:#include <bits/stdc++.h>#原创 2021-09-23 15:44:57 · 209 阅读 · 0 评论 -
CF1253F Cheap Robot
CF1253F Cheap Robot题意:给你一张 N 个点的带权无向连通图,其中结点 1,2,…,k 为充电中心。一个机器人在图中行走,假设机器人的电池容量为 c,则任何时刻,机器人的电量 x 都必须满足 c0≤x≤c。如果机器人沿着一条边权为 w 的边从结点 i 走到结点 j,它的电量会减少 w。机器人可以在到达某个充电中心时把电量充满。现在有 q 个询问,每次询问机器人要从 a 点到达 b 点,电池容量至少为多少,各个询问相互独立。保证 a 点和 b 点都是充电中心。题解:我和队友讨论这原创 2021-09-17 17:17:43 · 190 阅读 · 0 评论 -
cf1552F. Telepanting
cf1552F. Telepanting题意:在一个坐标轴上,有n个传送门,格式为:xi,yi,si,可以从xi传送到yi,si表示状态,如果si为0,到位置xi时不会传送,si变为1.如果到达xi时si为1,则触发传送,si变为0.问到达xn+1需要走的距离是多少?题解:我一开始就是模拟做,但是必然会超时,所以需要我们去寻找其他的性质当我们到达一个xi时,在此之前的所有传送位置(不含xi)必然都是激活状态(即si=1)为什么?如果之前有个传送位置pos不是激活,说明你在经过pos之前,po原创 2021-09-08 11:32:07 · 103 阅读 · 0 评论 -
hdu 7111-Remove
[hdu 7111] Brunhilda’s Birthday)题意:和P6756 [BalticOI2013] Brunhilda’s Birthday)一样的给你p个质数集,您可以进行任意多次操作,每一次操作时,您选择一个素数pip_{i}pi,这会使得n->⌊npi⌋∗pi\lfloor \frac{n}{p_{i}} \rfloor*p_{i}⌊pin⌋∗pi现在给你一个n,让你计算1到n所有数的操作到0的操作次数,记a[i]:表示将i操作为0的最小操作次数输出:∑1≤n≤N原创 2021-09-07 21:12:04 · 135 阅读 · 0 评论 -
2021银川Problem D. Farm(不保证正确性)
2021银川Problem D. Farm(注:由于没有数据,暂不保证正确性)题意:有n个点,m个有权边,有q个限制条件,每个限制条件有两个选择:选u个边,选第v个边,两个选择至少要选一个。问联通所有边的最小花费是多少?题解:代码:...原创 2021-09-06 22:18:32 · 155 阅读 · 0 评论 -
P1174 打砖块
P1174 打砖块题意:题解:参考题解:I_AM_HelloWorddanxmz2006这两个博客结合看,大致就能理解我们只在N处转移,面对Y类的块无需决策,因为Y类的块可以一直打不同的打砖块的顺序,决定了我们最后的分数情况,因此有个结论:我们最后一个打的砖块一定是N类砖块,除非所有的砖块都已经打完了我们从这点出发开始转移:对于计算[1,j]列的最优解时:第j列根本不打(此时直接继承[1,j-1]的状态)最后一发子弹在第j列上最后一发子弹在[1,j-1]列最后一发子弹还未出原创 2021-09-04 23:24:19 · 166 阅读 · 0 评论 -
cf1556E. Equilibrium
cf1556E. Equilibrium题意:有a,b两组长度为n的数,现在你要通过操作将范围[l,r]中的a,b两组一样。每次操作你在[l,r]中选偶数个下标pos,{pos1,pos2,pos3…},在奇数位上的下标给序列a对应的下标pos1加上1,在偶数位上的给b加1。问最少操作次数题解:我们令c[i]=b[i]-a[i],数组c反映了a与b的差值情况对于每次操作,我们都是在弥补这个差值对于一个区间[l,r],如果这个区间的差值和不等于0,说明无法通过操作实现。这个我们可以用一个前缀和su原创 2021-09-01 18:21:09 · 265 阅读 · 2 评论 -
P4062 [Code+#1]Yazid 的新生舞会(线段树做法)
P4062 [Code+#1]Yazid 的新生舞会(线段树做法)题意:给你一个序列a[1…n],求存在绝对众数的子区间个数。绝对众数指:区间中出现次数最多的那个数,出现次数严格大于区间长度的一半。题解:这两个博客将的很长清楚明白(尤其是第一个),我在反复看了n遍后,终于明白。题目细节很多,我再怎么写也没这两个详细,干脆直接放上链接。Zechariah的博客OMG_wc 的博客关于题解中提到的三阶前缀和:三阶前缀和公式转换:图来自lx_tyin博客代码:#include <原创 2021-08-11 17:42:46 · 153 阅读 · 0 评论 -
xay loves trees
xay loves trees题意:有两棵树,现在让你找到一个最大的点集合S,要求S中的点在第一棵树中任意两点存在祖先儿子关系且所有点是连接的,在第二棵树中任意两点都不存在祖先儿子关系,问S集合的最大是多少?题解:这个题和CF1528C Trees of Tranquillity这个题差不多,CF这个题没有对S在第一棵树中是连续的这个限制。说下做法:在第二棵树中任意两点不存在祖先儿子关系,1号是根节点,我们跑一边欧拉序,每个点都有一个区间,如果u是v的祖先,那么u的区间一定是覆盖v的区间的,所以如原创 2021-08-08 00:16:40 · 302 阅读 · 0 评论 -
P3959 [NOIP2017 提高组] 宝藏
P3959 [NOIP2017 提高组] 宝藏题意:额题意不好说,就是n个点m个边,选定一个点为根节点,构造一个最小生成树,边的权值为该该边起点到根节点之间的点的数量K(不含根节点) * 道路长度1<=n<=120<=m<=1e3v<=5e5题解:参考题解这数据范围?暴力暴力暴力不,我们用状压dp来做我们设dp[i][j]表示用到第i个元素,当前连接状态为j的花费的最小值这个式子没办法直接转移,因为每个边的花费是不一样的,即k是不一样的,我们可以重新设计原创 2021-05-20 22:41:46 · 228 阅读 · 0 评论 -
P2467 [SDOI2010]地精部落
P2467 [SDOI2010]地精部落题意:有n个山脉高度分别是1到n,现在让你按照山峰山谷的顺序依次摆放(第一个可以是山峰也可以是山谷),问有多少方案(答案mod p)题解:dp,但是自己推不出来这个博客讲的非常详细,方案也非常多我就先将第一个方案:我们先去看这个波动序列有什么性质?在一个波动序列中,如果i-1与i不相邻,交换i-1与i即可得到一个新的波动序列把长度为n的一个波动序列中的数字ai变成(n+1)-ai,会得到一个新的波动序列,且新波动序列的山峰和山谷与原序列相反我们原创 2021-08-06 11:47:29 · 114 阅读 · 0 评论 -
P2403 [SDOI2010]所驼门王的宝藏
P2403 [SDOI2010]所驼门王的宝藏题意:R * C的地图上有n个宝藏,给你n个宝藏的坐标,每个宝藏的位置上还有一个传送门,传送门有三种类型,1.可以传送到同行的其他宝藏位置,2.可以传送到同列的其他宝藏位置 3.可以传送到该点周围的八个位置你可以在任意一个宝藏处开始,问最多获得多少宝藏?题解:如果我们直接按照题意要求建边,(暴力建边,第1类门和每行其他门建边,第2,3类门同理),会得到一个有向有环图,对于环我们可以用tarjan进行缩点,然后得到DAG,然后就是在DAG直接dp求就行(原创 2021-08-04 16:07:43 · 168 阅读 · 0 评论 -
Tree Xor(未完全搞定)
Tree Xor题意:一颗有n个点的树,边权给出,第i个节点的权值为Wi,但并不知道Wi,只知道Wi在[Li,Ri],边权等于两端点的异或值问W序列有多少可能题解:如果我们知道一个点的值,就可以推出其他所有点的值。现在我们令w[1]=0,解出剩下的w,如果令w[1] = a ,剩下的w都会xor上a所以就变成了求解合法的a的数量,限制有n个不等式,形式为:L[i] <= W[i] Xor a <= R[i]你可能会觉得a会属于[L[i] Xor W[i],R[i] Xor w[原创 2021-07-27 21:04:03 · 275 阅读 · 2 评论 -
I love max and multiply HDU - 6971(详细解答)
I love max and multiply HDU - 6971题意:数组a和b,现在构造一个数组c,使得c[k]=max(a[i] * b[j]) , i&j>=k求数组c的和题解:我们可以考虑求出所有Dk=max(Ai * Bj)并满足i&j=k,然后再从后向前取,但是i&j=k不好求,那就改成Dk=max(Ai * Bj),满足k∈i&jk∈i&j,我们可以分别求k∈i和k∈j的情况就比如:k = 1010,k∈i&j,i&a原创 2021-07-25 15:14:03 · 385 阅读 · 0 评论 -
Black and white
Black and white题意:给你一个矩阵,每个位置都有一个值,现在你要把这些值都染成黑色,花费为这个位置的值。但是对于任意两行两列的四个相交正方形,如果其中三个是黑色正方形,可以免费将第四个正方形染成黑色。问最小花费题解:我们还是从任意两行两列的四个相交正方形,如果其中三个是黑色正方形,第四个正方形免费染成黑色这个性质下手。如图,黑色部分已经染色,黄色部分可以免费染色。我们现在这么想,横纵都给个坐标,黑色块相当于把横纵纵坐标相连,下图中,(a,c)相连,(b,c)相连,(a,d)相连,现原创 2021-07-25 13:12:45 · 145 阅读 · 0 评论 -
CF1526 D. Kill Anton
CF1526 D. Kill Anton题意:给你一个由’A’,‘N’.‘T’,'O’四个字符组成的字符串b,现在要求你改变b的顺序得到a,使得a通过移动回到b的步数最多。每次移动只能移动相邻两项题解:官方题解说:最佳情况为相同字符靠在一起证明我也不清楚。。证明可以看看这篇文章按照官方题解的说法,将相同的字符排列在一起,一共就四种字符,那么也就是排列方式一共就24种(4!),我们直接暴力求出每种情况,然后求出其要移动的步数,取最大值这个移动的步数咋求?假设原先字符串是ANTON,下标依次原创 2021-07-22 22:24:39 · 166 阅读 · 0 评论 -
Acwing 216. Rainbow的信号
Acwing 216. Rainbow的信号题意:给你n个数,在这n个数中,等概率地选取两个数l,r,如果l>r,则交换l,r把信号中的第 l 个数到第 r 个数取出来,构成一个数列 P。A 部分对话的密码是数列 P 的 xor 和的数学期望值,xor 和就是数列 P 中各个数异或之后得到的数; xor 和的期望就是对于所有可能选取的 l、r,所得到的数列的 xor 和的平均数。B 部分对话的密码是数列 P 的 and 和的期望,定义类似于 xor 和。C 部分对话的密码是数列 P 的 o原创 2021-07-15 20:53:04 · 159 阅读 · 1 评论 -
CF 1529E. Trees of Tranquillity
CF 1529E. Trees of Tranquillity文章目录题意:题解:代码:线段树代码:利用set实现题意:有A1,A2两棵树,根是1,编号都是1~n,先制作图A3,如果两个点的x和y同时满足以下两个条件则连边,1.在树A中x是y的祖先或者y是x的祖先2.在树B中x和y谁都不是谁的祖先求A3的最大的团集的大小团:图G的一个完全子图题目A1和A2的输入方式为:a2,a3…an, ai是树的顶点i的父亲节点(1<= ai <i)题解:参考题解:文章1文章2我原创 2021-07-13 17:57:15 · 162 阅读 · 0 评论 -
Acwing 236. 格鲁吉亚和鲍勃(博弈论妙题)
Acwing 236. 格鲁吉亚和鲍勃题意:一排网格,将网格从左到右依次编号 1,2,3,…,并将 N 个西洋棋棋子放在不同的网格上,如下图所示:两个人轮流移动棋子每次玩家选择一个棋子,并将其向左移动,但是不能越过任何其他西洋棋棋子或超过左边界。玩家可以自由选择棋子移动的步数,其限制是棋子必须至少移动一步,一个网格最多可以包含一个棋子。无法移动任何棋子的玩家将输掉游戏。1<=N<=1000每个棋子的位置不超过10000题解:看题目可知,每个棋子的位置不超过10000 ,说明原创 2021-07-11 15:40:26 · 221 阅读 · 0 评论