题解1178f cf f1
[题解]AT_abc267_f [ABC267F] Exactly K Steps
大家好,我是毒瘤,喜欢用玄学算法过题。 发现题解区没有这个做法,于是来发一篇。 思路 首先发现如果一个点对 \((u,v)\) 的距离为 \(d\),那么在这棵树以 \(u\) 为根时,\(v\) 的深度为 \(d\)。 Code ......
bupt ai院第一次周赛题解
题目一 简单模拟题 点击查看代码 #include<bits/stdc++.h> using namespace std; #define ebk emplace_back #define x first #define y second typedef pair<int,int> PII; typ ......
【课程】算法设计与分析——第八周 题解笔记
第八周 算法题解笔记 1极值点 题目描述 给定一个单峰函数f(x)和它的定义域,求它的极值点 该单峰函数f(x)保证定义域内有且只有一个极值点,且为极大值点 题解 本题感觉和dp关系不大,主要思路是三分法,和二分法非常类似,但没有二分法常用,主要用途是用来求单峰函数的极值 对于任意一个上凸函数,选取 ......
# P5522 [yLOI2019] 棠梨煎雪 题解
P5522 [yLOI2019] 棠梨煎雪 题解 题目链接 分析1 抛开时间复杂度不谈,先来看看对于每次询问,如何计算合法的字符串个数。 对于每次询问的 \([l,r]\),我们可以对字符串的每一位按以下种情况讨论(设讨论的这一位为第 \(i\) 位): \(str[l..r][i]\) 既有 0 ......
CF906 div2
CF906 div2 A.Doremy's Paint 3 题意 给出一个序列,可以随意打乱顺序,问最后能否使得所有相邻两个元素的和相等。 数据范围 多组数据,\(2 <= n <= 100 , 1 <= a_i <= 10^5\) 样例输入 5 2 8 9 3 1 1 2 4 1 1 4 5 5 ......
CF1632E2口胡
容易发现新加的边一定是 \(1\) 到某个深度大于 \(i\) 的节点。 考虑每次摧毁深度小于等于 \(i\) 的节点,如果有多个连通块,那么对于 \(b\) 不在的连通块答案是不会变的。 所以如果有两个及以上的连通块中最深的节点是原树上最深的节点,那么答案一定是这个深度。 考虑倒过来从深度大的开始 ......
[ARC107F] Sum of Abs 题解
题意 给定一个 \(N\) 个点,\(M\) 条边的简单无向图,每个节点有两个值 \(A_i\) 和 \(B_i\)。 现对于每个节点,均可以选择花费 \(A_i\) 的代价将其删去或保留节点。若一个节点被删除,那么所有与其向连的边也会被删除。 定义一个极大联通块的权值为联通块内所有节点的 \(B_ ......
CF1578J口胡
容易发现分配给一个子树的钱只要够了就会移除 具体来讲,如果一个结点被分配到了 \(x\) 块钱,那么有两种情况: 子树全部都拿到了该拿的钱,自己拿到了一部分或者全部拿到了 对于每个儿子,其子树拿到的钱均不超过某个值 对于情况 1 容易构造使其不发生,对于情况 2 可以每次二分。 \(O(n^2\lo ......
【题解 P2048】 超级钢琴
[NOI2010] 超级钢琴 题目描述 小 Z 是一个小有名气的钢琴家,最近 C 博士送给了小 Z 一架超级钢琴,小 Z 希望能够用这架钢琴创作出世界上最美妙的音乐。 这架超级钢琴可以弹奏出 \(n\) 个音符,编号为 \(1\) 至 \(n\)。第 \(i\) 个音符的美妙度为 \(A_i\),其 ......
洛谷 P1931 题解
三倍经验 P1931 UVA436 SP9340 题意 给你 \(n(n \le 30)\) 种货币及 \(m\) 种汇率,问是否出现套利的情况。 怎么没给 \(m\) 的范围啊 思路 首先把汇率抽象成一张图。容易发现,若一个单位的某种货币经过一个环获得了大于一的代价,说明出现了套利。具体来说,考虑 ......
[CF1662F] Antennas
CF1662F 遇到绝对值想想拆开。 考虑优化 bfs 时扩展过程,设当前点为 i,考虑 i,j 连边。 |\(i-j\)|\(\leq\) \(\min(p_i,p_j)\),则 j 至少应该在 [\(i-p_i\),\(i+p_i\)]。 分类讨论一下 \(j\geq i\) 时 \(j-i\l ......
CF1542E2 Abnormal Permutation Pairs (hard version) 题解
怎么会有这么离谱的题目啊。 【模板】前缀和优化 dp。 思路 考虑一个基本的东西。 由于要求字典序的限制。 我们可以枚举最长公共前缀计算。 考虑如何求长度为 \(i\) 的排列有 \(j\) 个逆序对的数量。 设 \(dp_{i,j}\)。 \[dp_{i,j}=\sum_{k=0}^{i-1}dp ......
AT_gigacode_2019_b 题解
本题考查基本语法。 思路 用 while 来枚举每一组数据,用 if 判断是否合法。 在判断时需要使用逻辑运算符 &&,它的意思是左右两个要求如果同时成立,则会返回 true,否则返回 false。 \(a \ge x\),\(b \ge y\),\(a + b \ge z\)。 这三个条件都要同时 ......
[题解] CF1051F The Shortest Statement
The Shortest Statement 给一张 \(n\) 个点 \(m\) 条边的无向连通图,保证 \(m - n \le 20\),\(q\) 次询问求两个点间的最短路。 \(n, m, q \le 10^5\)。 由于边数只比点数多 20,所以如果我们建出这张图的一棵生成树,那么非树边至 ......
P3045 题解
小清新数据结构题。 令已经确定被购买的奶牛的集合为 \(S\)。 注意到必然存在一个最优解使得集合 \(S\) 中 \(P_i-C_i\) 前 \(k\) 大的奶牛使用了优惠券。 证明: 令使用优惠券的集合为 \(S'\),显然有 \(|S'|=k\),则花费为: \[\sum_{i\in S\we ......
CF1709F
传送门 description 给定 \(n,k,f\)。规定一个由长度为 \(n\) 的 01 串组成的多重集是合法的,当且仅当对于所有长度不超过 \(n\) 的非空 01 串(有 \(2^n-1\) 个)\(s\),有 \(p_s\leq c_s\)。其中,\(p_s\) 是 \(s\) 在多重 ......
「NOIP2014」解方程 题解
思路 首先我们可以观察到 \(n\) 和 \(m\) 与\(a_i\) 相比小的很多,所以我们可以考虑直接暴力求解 但是 \(a_i\) 太大了,所以如果需要直接计算的话需要全程使用高精度算法。 因为高精度算法代码量有大速度又慢我们可依考虑将 \(a_i\) 转化为一个极大的指数取模的结果,因为只有 ......
Q7.4.1.2. 奇怪的方格涂色 题解
原题链接 首先想到暴力网络流:考虑最小割,\(S\) 表示染黑色,\(T\) 表示染白色。 每个格子 \(i\),连 \((S,i,b_i)\),\((i,T,w_i)\)。怎么处理“奇怪的方格”?连 \((i,i^\prime,p_i)\) 和 \((i^\prime,j,+\infty)\)。表 ......
AT_abc230_f [ABC230F] Predilection 题解
prelogue 各位在比赛的时候一定要坚信自己的式子,然后去考虑自己的实现是不是挂了。本人在今天模拟赛的时候质疑自己的式子然后不看实现 100 -> 0。 analysis 考虑对这个给定数组进行前缀和,然后就将问题转化成为了求这个前缀和数组的子序列的个数。对于求子序列,我们很轻松可以写出来这个式 ......
CF600E Lomsat gelral
题意 给定一棵根为 \(1\) 的 有根树。 每个节点有颜色,求每个节点子树内出现最多的颜色编号之和。 Sol Dsu on tree板子题。 首先对于整棵树进行轻重链剖分,注意到一个关键性质:轻边只有 \(log\) 条。 \(n ^ 2\) 的暴力是 \(trivial\) 的,不再赘述。 注意 ......
CF Good Bye 2022: 2023 is NEAR (CF1770C)
C.Koxia and Number Theory 题意:给定 n 个数,问是否存在一个正整数 x ,使得对 \(\forall \ i,j \in [1,n]\) ,有 \(\gcd(a_i+x,a_j+x)=1\) 题解: 感觉这题挺难的,想了很多次也没想出来. 若两个数互质,一定不存在质数 \ ......
Codeforces Round 809 (Div. 2) D1. Chopping Carrots (Easy Version) 题解
题意 Codeforces Round 809 (Div. 2) D1. Chopping Carrots (Easy Version) 给两个整数\(n, k\), 一个数组 \(a\), 要求构造一个同样长度的数组 \(p\), 使得 \(\max\limits_{1 \le i \le n}\ ......
CF1893B Neutral Tonality
思路 首先可以知道答案的下界就是序列 \(a\) 原来的 LIS,现在需要做的就是尽可能地保持答案不增加。 可以肯定的是,将序列 \(b\) 从大到小地插入序列 \(a\) 是不劣的,并且如果在 \(a_i\) 前插入的都是 \(\ge a_i\) 的不会使答案增加,可以感性理解,如果原来的 LIS ......
[USACO23FEB] Equal Sum Subarrays G 题解
[USACO23FEB] Equal Sum Subarrays G 题解 题目链接 \(O(n^5)\) 暴力 显然,如果修改 \(a_i\) 的值,只会影响包含 \(a_i\) 的区间的区间和。于是对于每个 \(a_i\),可以将所有区间分成两类,即包含 \(a_i\) 的区间和不包含 \(a_ ......
CF907 div2
CF907 div2 A.Sorting with Twos 题意 给一个长度为n的序列,可以进行的操作是,选取一个i,令前\(2^i\)个元素减1,问若干次操作之后能否使得序列成为不降序列。 数据范围 多组数据\(1<=T<=10^4\),\(1 <= n <= 20\),\(0 <= a_i < ......
CF/AT/LUOGU 日常做题合集
标签格式 思路 算法 特殊 CF1155F 标签 分析性质 图论,状压 DP,枚举 记录方案, 思路 做的时候想了几个错误做法,还看错题了。 因为边双的形态必然是由一个点加多条链组成的(耳分解)(一个环 = 一个点 + 一条链),即糖葫芦型。 又因为 \(n\le 14\) 考虑暴力。 先预处理出 ......
CF467B Fedor and New Game
前言 传送门 本题思维难度:橙。 本题代码难度:橙或红。 综合难度:橙。 本人代码码量位居第二,但是呢,我的空格多,所以,还不来看一下? 题意 根据题目,若两人一人有 $j$,一人没 $j$,则异或后,第 $j$ 位为 $1$。 那么,题目转化为:已知有 $m + 1$ 个数,求出满足 $a_i$ ......
AGC041D-Problem Scores 题解
题目链接 luogu atcoder 分析 令 \(k=\left \lfloor \frac{n}{2} \right \rfloor\) 对于第三个条件,只需要满足 \(\sum_{i=1}^{k+1}a[i]<\sum_{i=n-k+1}^{n}a[i]\) 即可 有一个 \(trick\): ......
CF232D Fence
好喜欢 SA + DS。 洛谷 CF 给出序列 \(a_1\sim a_n\),有 \(q\) 次询问,每次询问给出 \([l,r]\),求有多少个区间 \([x,y]\) 满足 \(y-x=r-l\),\([x,y] \bigcap \,[l,r]=\varnothing\) 且 \(\foral ......