题解1525f cf

CF718D Andrew and Chemistry

题目描述: 给你一个有\(n\)个点的树。当每一个点的度不超过\(4\)时这棵树是合法的。现在让你再添加一个点,在树仍然合法的情况下,一共有多少种树。 当两棵树同构时视作同一种。 保证输入的树是合法的。 数据范围: \(1\leq n\leq 10^5\) \(1\leq u_i,v_i\leq n ......
Chemistry Andrew 718D 718 and

ABC328F题解

原题链接 洛谷题面 提交记录 闲话 赛场就做了这道和 A,喜提 \(625\) 大分。 带权并查集练手题,有点像银河英雄传说。 题目大意 存在一个长度为 \(N\) 的数列 \(X\),给定 \(Q\) 个三元组 \((a_i,b_i,d_i)\),定义一个好集合为集合 \(S\subseteq\{ ......
题解 328F ABC 328

20223年11月第二题解---------数组

1. 问题H:【C语言训练】排序问题<1> 1.1. 解题思路 题目已经告诉你了,用排序 1.2. 解题方法 1.2.1. 冒泡排序 #include <stdio.h> #define N 10 void bubberSort(int *a, int size);//冒泡排序,升序,即按从小到大的 ......
题解 数组 20223

CF457D Bingo!

题目描述: 有一个\(n×n(n≤300)\)的棋盘和\(1~m(n^2≤m≤100000)\) 这些数字。棋盘首先会被随机生成,即从“填着值域\(1 \sim m\)的数字且\(n^2\)个数字两两不同”的所有方案中随机选一个。 然后你会从\(1\sim m\)中随机选出\(k(n≤k≤m)\)个 ......
Bingo 457D 457 CF

题解:[春季测试 2023] 幂次

题解:[春季测试 2023] 幂次 给定 \(n,k\) ,求有多少个整数 \(i \in [1,n]\) ,满足 \(i=a^b (a,b \in N^+,b \geq k)\) 算法一 \(k \ge 3:\) 发现只需要筛到1e6就没有贡献了,加上 \(set\) 暴力判重即可。 \(k=2: ......
题解 2023

CF895

CF895 div3 A. Two Vessels 题意 有两杯水,一杯有a毫升,另一杯有b毫升,被子的容积无限大。另外还有一个容量为c毫升的杯子,可以用这个杯子在前两个杯子之间舀水,问最少需要几次可以令前两个杯子内的水一样多,舀水的时候不必舀整数毫升。 样例输入 6 3 7 2 17 4 3 17 ......
895 CF

Tenzing and Random Operations CF1842G 题解

设 \(m\) 次选的位置分别为 \(b_{1\sim m}\)。 于是答案为 \(\mathbb E(\prod\limits_{i = 1}^{n}(a_i + \sum\limits_{j = 1}^{m}[b_j \le i]\cdot v)) = \frac{S}{n^m}\)。 首先考虑 ......
题解 Operations Tenzing Random 1842G

CF1322E - Median Mountain Range - 总结

CF1322E - Median Mountain Range 考虑分别对每个位置求出最后的数字。先枚举出这个数 \(x\),并将 \(a_i \ge x\) 的数设为 \(1\),\(a_i < x\) 的数设为 \(0\),然后做题目中的操作,若为 \(0\),则最终结果小于 \(x\),为 \ ......
Mountain Median 1322E Range 1322

P2687 [USACO4.3] 逢低吸纳 题解

双倍经验 分析 这是一道求最长下降子序列的题目,且要统计方案,但是会有重复情况,例如以下的的数据, 4 4 2 2 3 我们可以选择 \(1, 2\), \(1, 2\), \(1, 4\) 这几天来购买,但是 \(1, 2\) 和 \(1, 3\) 本质上是一样的,所以只算一种。 根据上面的说明, ......
题解 USACO4 P2687 USACO 2687

solution-CF1615F

LEGOndary Grandmaster https://www.luogu.com.cn/problem/CF1615F 神题!看到题解一眼就知道自己大概率想不出来了。 主要还是积累两个套路: Trick 1 考虑将原序列的奇数位位置上的数取反,惊讶地发现操作简化为了每次交换相邻两个数。显然地, ......
solution-CF solution 1615 CF

[题解] P9838 挑战 NPC IV

P9838 挑战 NPC IV 定义 \(f(x) = 1 + \log_2 \operatorname{lowbit}(x)\)。 定义一个 \(1 \sim n\) 的排列 \(p\) 的权值是 \(\sum_{l = 1}^n \sum_{r = l}^n \sum_{i \in [l, r] ......
题解 P9838 9838 NPC IV

【2023 #84】 锦城ACM周测 (大二个人赛) 题解

题目难度 \(B<D<E=C<A\) Candy war Question 有 \(N\) 个盒子摆成环形,第 \(i\) 和盒子里面有 \(a_i\) 个糖果,他们开始在 \(1\) 好盒子,然后每个人取一次,可以取\(1\), 或者小于当前盒子内糖果数的一个质数 \(p\), 两个人都取了之后就 ......
个人赛 题解 个人 2023 ACM

CF1853B

此篇题解可以通过 \(1\le t\le 2\times10^5,1\le n,k\le10^{18}\) ,不保证 \(\sum n\le2\times 10^5\) 的数据(绝对不是因为没仔细看数据范围)。 题意 \(t\) 组询问,每组给出 \(n\) 和 \(k\),求有多少个单调不递减且非 ......
1853B 1853 CF

CF1863E

题意 给出具有依赖关系的 \(n\) 个任务,每个任务只能在某一天的第 \(h_i\) 小时做。只要满足了依赖关系,一个小时可以做很多任务。求最小的完成时间。 分析 结合题目条件,很快发现这是一个有多个联通块的 DAG。 拆分一下问题,先考虑怎么求单个联通块的所有开始时间和结束时间,然后再合并起来。 ......
1863E 1863 CF

CF1779G

题面 给出一个大小为 \(n(1≤n≤10^5)\) 的三角形图(\(n=3\) 时如图),每个方向有 \(n\) 层由有向边构成的路径。可以翻转任意条边的方向,求把让图中每个点都可以到达其他所有点的最小翻转次数。 分析 注意到一个关键点:内部的一排点构成一条路径。这意味着如果外围成环,那么整个图满 ......
1779G 1779 CF

CF983E

分析 很明显,有一个贪心的性质,对于每一次选择路线,一定会选择从当前点能走得最远的一条。 这样就得到了一个暴力做法:预处理好每个点向祖先走得最远的一条路,对于每次询问,两个点暴力上跳,在最近公共祖先处特判一下是否可以一下走完即可。 考虑优化这个过程,找最近公共祖先和上跳都可以倍增处理。唯一的问题是最 ......
983E 983 CF

CF573D

分析 遇到难的题都可以考虑一下弱化版。对于这道题,弱化版很简单,就是排序后对应位置的点匹配。那么加入限制后,可能就会需要微调一下(这种微调的想法也是很有价值的)。 考虑什么时候会需要调整,无非就是匹配到了自己的马。既然要调整,那必然会和另一个人的马交换,在这个基础上,还希望距离原来的尽可能近。 不妨 ......
573D 573 CF

「题解」P6791 [SNOI2020] 取石子

anti-game 没有用,能取到 \(n-1\) 的必胜,不能取到 \(n-1\) 的必败,所以现在考虑取走最后石子获胜的情况。 对于一个 \(n\) 来说合法的 \(k\) 一定是一个前缀,并且一定是贪心取最小的(留给对方的机会更小),所以启发将每个 \(n\) 最小的合法的 \(k=a_n\) ......
题解 石子 P6791 6791 2020

ABC 328 题解

A 直接模拟即可。 cin>>n>>m; for(int i=1;i<=n;++i){ int x; cin>>x; if(x<=m)sum+=x; } cout<<sum; B 直接模拟即可。 int n,ans; bool chk(int x,int y){ int dig=x%10; x/=1 ......
题解 ABC 328

ABC328F 题解

blog。提供一个普通并查集 + 启发式合并做法。 考虑直接维护 \(X_i\)。对于 \(X_u-X_v=w\),分四种情况。 \(X_u,X_v\) 都没被维护过。直接钦定 \(X_u\gets w,X_v\gets0\),以后再改。 \(X_u\) 没被维护过,\(X_v\) 被维护过。显然 ......
题解 328F ABC 328

[题解] CF407E k-d-sequence

k-d-sequence 给你一个长为 \(n\) 的序列,求最长的子区间使得它加入至多 \(k\) 个数后,重排后是公差为 \(d\) 的等差数列。 \(n, k \le 2 \times 10^5\),\(0 \le d \le 10^9\)。 公差是 \(d\) 的等差数列模 \(p\) 的值 ......
题解 k-d-sequence sequence 407E 407

ABC328G 题解

blog。剩下几分钟的时候胡出来了,但是时间不够,痛失 AK /dk。 \(N\le22\),显然状压 DP。\(dp_s\) 表示确定 \(s\) 集合的元素所需的代价(这些元素都放在最前面)。 确定了 \(s\) 后,发现会有 \(\operatorname{popcount}(s)\) 个元素 ......
题解 328G ABC 328

[题解] CF505E Mr. Kitayuta vs. Bamboos

Mr. Kitayuta vs. Bamboos 给定 \(n\) 个数 \(h_{1 \dots n}\)。 你需要进行 \(m\) 轮操作,每轮操作为 \(k\) 次修改,每次修改可以选择一个数 \(h_i\) 修改为 \(\max(h_i - p, 0)\)。 每轮操作后每个 \(h_i\) ......
题解 Kitayuta Bamboos 505E 505

ABC328题解(C-G)

A/B 较为简单,略去。 C 预处理一下,然后前缀和就好了。 时间复杂度 \(O(n)\)。 D 用链表来记录字符串。 注意到每次能够消去意味着链表上连续三个节点拼起来是 ABC,然后从左到右一个个算就行了。 匹配到的话把三个节点一起删掉。 时间复杂度 \(O(n)\)。 E 注意到 \(N\le ......
题解 ABC 328 C-G

【题解 P8763】[蓝桥杯 2021 国 ABC] 异或变换

同楼上dalao做法: #include <iostream> #include <algorithm> #include <cstdio> #include <cmath> #include <cstring> #include <string> #include <cstdlib> #inclu ......
蓝桥 题解 P8763 8763 2021

2022新生赛 玩石头 题解

这题乍一看是个背包,但是它对背包物品的重量进行了限制,而且我们没有手段得知当前物品是否大于前面所有物品。研究发现,纪念品最大价值不会超过4000.因此我们可以用类似于01背包的做法,以纪念品价值作为重量,纪念品重量作为价值来dp.打表可以发现,在给定数据的范围下,石头塔最多为三十层,则时髦值之和最大 ......
题解 新生 石头 2022

P9836 种树 题解

蒟蒻在考场上花了 2h45min AC 本题 通过高度求宽度 定义一棵树的宽度为它高度的正因数个数 我们可以预处理 \(10^4\) 之内素数。 for(ll i=2; i<=10000; i++) { if(ok[i]==0) { ok[i]=i; pr[++nP]=i; } for(ll j=1 ......
题解 P9836 9836

CF226E Noble Knight's Path

重链剖分真可爱,数据结构真可爱。 tags: \(\text{data structures}\) \(\text{trees}\) $\color{red}{*2900} $ 洛谷 CF 给出一棵 \(n\) 个点的树,初始所有点为白色。还有 \(q\) 次操作,第 \(i\) 个操作发生在第 \ ......
Knight Noble 226E Path 226

[题解] CF1327F AND Segments

AND Segments 有 \(m\) 个限制 \((l, r, x)\)。 要计算满足以下条件的长度为 \(n\) 的序列 \(a\) 的数量: \(\forall i \in [1, n], 0 \le a_i < 2^k\)。 \(\forall i \in [1, m], a_{l_i} ......
题解 Segments 1327F 1327 AND

CF 628 C Bear and String Distance

题面翻译 题目描述: Limak是一只小北极熊。他喜欢单词——只由小写字母构成,长度为n的单词。 他规定dist(s,s')的值为s与s'在26个字母中的间距。如,dist(c,e)=dist(e,c)=2,dist(a,z)=dist(z,a)=25。 而且,当dist两个单词时,其值为dist第 ......
Distance String Bear 628 and