colorful 133f tree abc
ABC321G
其实赛时可能可以做出来的,只是打了前 6 道想下班了,有点小小遗憾。 首先问题看起来很唬人,考虑转换一下。考虑已经固定 \(m\) 条边,对于一个集合 \(S\),什么时候会不与其他点有边。容易发现,此时需要满足 \(\sum[R_i\in S]=\sum [B_j\in S]\)。记这个数为 \( ......
CF1055F Tree and XOR
这道题代码虽然比较短,但花了我整整一天才过,太菜了 这是 CF241B 的加强版,但是有点不同,因为 CF241B 后半部分求前 \(k\) 大的和没法优化了,而这道题能把前面的求第 \(k\) 小时间复杂度优化到单 log ,但是需要注意这道题开 trie 完全开不下,所以肯定没法 trie 上二 ......
ABC141F
偶然找到的线性基好题。 考虑 \(s=\bigoplus x_i\),则此时 \(b=s\oplus a\),问题变为 \(\max(a+(s\oplus a))\)。 然后观察 \(s\),有一个很典的想法是,\(s\) 为 \(0\) 的位上,\(a\) 如果是 \(0\) 则会产生 \(0\) ......
牛客2022多校DAY10-K You are given a tree
「牛客2022多校DAY10-K」 You are given a tree... 简要题意 给一棵带点权和边权的树,找到至多 \(k\) 个点权不同的点,使得它们之间路径覆盖的边权和最大。 \(n\le 5000,k\le 5\)。 Solution 考虑颜色数量不大的时候怎么暴力。显然可以直接状 ......
「杂题乱刷」AT_abc280_d
题目链接 舒服题。 考虑贪心,我们可以直接枚举到 \(10^7\),然后将 \(n\) 一直除以 \(n\) 和 \(i(1\le i \le 10^7)\) 的最大公因数,若到 \(10^7\) 时 \(n\) 还不为 \(1\),这时直接输出 \(n\) 即可。 参考代码: 点击查看代码 /* ......
「杂题乱刷」AT_abc280_e 题解
题目链接 期望 dp 板子题,我们直接设 \(dp_i\) 为怪物血量只剩下 \(i\) 时的概率即可,状态转移方程也很简单了,详见代码。 参考代码: 点击查看代码 /* Tips: 你数组开小了吗? 你MLE了吗? 你觉得是贪心,是不是该想想dp? 一个小时没调出来,是不是该考虑换题? */ #i ......
[ABC265E] Warp
首先,这一题很显然是一个 Dp。 考虑如何转移状态,因为一开始的坐标是 \((0,0)\)。 发现最后的坐标是 \((A\times i + C \times j + E \times k,B\times i + D \times j + F \times k)\)。如果是统计最后的种类的话,那么就 ......
CF1740H MEX Tree Manipulation
CF1740H MEX Tree Manipulation 定义一棵树上每个节点的值为其所有儿子的值的 MEX,叶子节点的值为 \(0\)。 现在有一个初始只有节点 \(1\) 的树,每次输入一个 \(x_i\) 代表加入一个点 \(i+1\),它的父亲为 \(x_i\),求加入这个点之后树上所有点 ......
[Ynoi2007]rfplca/[CF1491H] Yuezheng Ling and Dynamic Tree
题目描述 给定一棵大小为 \(n\) 的 \(1\) 为根节点的树,树用如下方式给出:输入 \(a_2,a_3,\dots,a_n\),保证 \(1\leq a_i<i\),将 \(a_i\) 与 \(i\) 连边形成一棵树。 接下来有 \(m\) 次操作,操作有两种: 1 l r x 令 \(a_ ......
AtCoder_abc333
AtCoder_abc333 比赛链接 A - Three Threes 题目描述 输入一个 \(N\) 输出 \(N\) 个 \(N\) 。 解题思路 (这个题但凡学过都能写出来吧) Code // Problem: A - Three Threes // Contest: AtCoder - T ......
Binary Tree Level Order Traversal II
Source Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, from left to right, level by level from leaf to root ......
ABC265 复盘
ABC265 复盘 At 链接 LG 链接 [ABC265A] Apple 思路解析:判断一下一次性买 3 个便宜还是 3 个分开买便宜,选更便宜的方法尽量多买剩下的单独买即可。 #include<bits/stdc++.h> using namespace std; int n, x, y; in ......
a-tree-select的使用案例
<a-tree-select :maxTagCount="6" @deselect="deSelectQueryDetailTreeData" @select="initQueryDetailTreeData" style="width: 270px" v-model:value="formStat ......
CF1593E-Gardener-and-Tree-题解
title: CF1593E Gardener and Tree 题解 date: 2022-05-27 21:30:48 categories: - 题解 原题面 题意: 给出一个 \(n\) 个点的树,删除 \(k\) 次叶子节点,求剩下的节点数。 思路: 设 \(cnt_i\) 为 \(k\) ......
AT_abc323_f [ABC323F] Push and Carry 题解
不难发现答案的下界为 \(|x_b-x_c|+|y_b-y_c|\),这是每步都推箱子的情况。 但很多时候并不能直接开始推箱子,所以人要先移动到箱子的后面(相对于目的地),再把箱子往目的地推。 比如这种情况(B 为箱子,C 为目的地): B.. ... ..C 推完箱子的一边后,还要走到另一边: ↓ ......
AT_abc325_e [ABC325E] Our clients, please wait a moment 题解
原题传送门 最短路板题。 乘坐的过程一定是先车再火车(如果有),假设换车地点为 \(x\),那么最小代价为坐车从 \(1\) 到 \(x\) 与坐火车从 \(x\) 到 \(n\) 的最小代价之和,分开跑最短路即可,时间复杂度 \(O(n^2\log n+n)\)。 code: #include<i ......
vscode中Todo Tree插件的使用
vscode中Todo Tree插件的使用 配置JSON 将下方的JSON代码放入用户配置中 复制JSON配置后,点击这里,然后粘贴。 "todo-tree.tree.showScanModeButton": false, "todo-tree.filtering.excludeGlobs": [" ......
Atcoder ABC 333 题解(A - F)
ABC 不讲 D 待更 E 待更 F 设 $ f(i, j) $ 为有 $ i $ 个人时,第 $ j $ 个人活到最后的概率,显然: \[ f(i, j) = \begin{cases} 1, & i = 1, j = 1 \\ \frac{1}{2}f(i, i), & i \neq 1, j ......
[ABC325G] offence
题意 给定一个长度为 \(n\) 字符串以及一个数 \(f\),你可以执行以下操作任意次,求最终字符串长度的最小值。 在字符串中选择一个连续的 of,删掉它以及它后面的 \(i\) 个字符,\(0 \le i \le f\)。 数据范围:\(n \le 300\)。 思路 看到数据范围以及字符串中间 ......
Two-Colored Dominoes 题解
前言 看了这道题的几篇题解,感觉讲的方法都比较麻烦,这里讲一个感觉比较简单的方法。 思路 首先判断是否有解。计算一下每一行和每一列的牌的数量,只要有一个是奇数就无解,否则有解。证明显然,偶数一定可以分成两组,在纸上模拟一下也可以得出。 其次看如何构造。对于竖着的牌,显然只对每行有影响,因为列上的颜色 ......
[ABC318F] Octopus 题解
前言 赛时只做到了 E 题,赛后才来补的 F 题,还没做出来,看来还是我太菜了。看了题解过后感觉这道题的思路特别巧妙,于是就来写了这篇题解。 题意 简述一下题意。 有 \(n\) 个宝藏位置分别在 \(a_{i}\),另外有一只章鱼有 \(n\) 条触手,每条触手的长度为 \(b_{i}\)。 求有 ......
[ABC318G] Typical Path Problem 题解
原题链接:ABC318G 显然是圆方树。 点双缩点过后建立一颗以点 \(c\) 为根节点的圆方树,考虑什么情况是合法的。 从点 \(a\) 开始往上跳直到跳到点 \(c\),如果中间走过了某一个方点并且这个方点与 \(b\) 点有直接连边,那么就是合法的;否则不合法。 证明:如果路径中所经过的方点和 ......
[ABC315G] Ai + Bj + Ck = X (1 <= i, j, k <= N) 题解
原题链接:ABC315G 前置知识:扩展欧几里得算法。如果还不会扩欧的话,建议先去做这道题。 题意 给定 \(n,a,b,c,k\)。求有多少个 \(x,y,z(x,y,z \le n)\) 满足 \(ax+by+cz=k\)。 思路 首先看到题目给出的方程式:\(ax+by+cz=k\)。我们会发 ......
[ABC239Ex] Dice Product 2 题解
原题链接:ABC239Ex。 题意不多赘述。 看到求期望值,我们想到可以用期望 DP。 设 \(dp_{i}\) 表示最终结果大于等于 \(i\) 时的操作次数的期望值。 那么我们可以得到一个基本的状态转移方程:\(dp_{i}=\frac{1}{n} \times \sum_{j=1}^{n}dp ......
[ABC328F] Good Set Query 题解
复习了一下边带权并查集板子。 设 \(d_{x}\) 表示当前点到它所在连通块根节点的距离。 合并点 \(x\) 和点 \(y\) 所在两个连通块时需要更新 \(d\)。因为将 \(x\) 点所在连通块的根节点的父亲节点设为了 \(y\) 点所在连通块的根节点,所以有 \(x \to y \to F ......
CF1901E Compressed Tree 题解
原题链接:CF1901E,树形 dp + 神奇分类讨论。 很容易想到树形 dp。难点在于如何转移以及统计答案,需要大量分讨。 父亲(及其以上)和自己组成连通块,不缩。(只保留自己并且往上传递) 连通块中只有自己一个(记录答案) 一个儿子和自己组成连通块,且自己作为根节点,不和父亲收缩(记录答案) 一 ......
树 Tree uva548
原题链接 高中信息题就有给你中序遍历和后序遍历让你求前序遍历的题目。这道题就是根据这两个遍历创建出对应的树,然后根据DFS(深度优先搜索)去求出最小路径。 主要代码: #include<bits/stdc++.h> using namespace std; const int Max=10000+1 ......
树的层次遍历 Trees on the level uva122
原题链接 这道题可以说基本涵盖了树的大部分知识点——树的创建,树的生成,树的删除,树的BFS(宽度优先搜索)。个人认为是学习树时很具有价值的一道题目。 题目意思很好理解,讨论区的题解写的也比本人优秀太多了,这里就不具体分析了。 ......
回顾经典之neko_tree
一.neko_tree 猫neko树是一种维护序列的数据结构。在处理绝大多数线段树能处理的问题(如最大子段和,区间最大值,区间\(gcd\)等满足结合律且能快速合并的信息)上能做到\(O(nlogn)\)预处理后\(O(1)\)的询问。但是不支持修改。 neko树怎么维护信息?想象在线段树上取得区间 ......