题解another problem 1870e
CSP-S R2 T4 种树题解
\(First\) -大意: 给定一颗以 \(1\) 为根有 \(n\) 个节点的树,可以在每个节点上种一颗高度为 \(0\) 的树,每天可以选择一个未种树且与某个已种树的节点通过一条边连接的节点种树,每个节点 \(i\) 的树种下后第 \(x\) 天( \(x\) 从整个任务的第一天开始计算)会成 ......
luogu P1608 路径统计题解
update 2022.2.17 图炸了 update 2022.8.20 修改了一些错误 step 0 一些建议 做此题前建议先去做 P1144 最短路计数 并且建议使用 Dijkstra 算法去写,原因在 这个帖子 和 这个帖子 也感谢这位大佬的付出。 不然我就要拿SPFA写了。 step 1 ......
排队-题解
排队-题解 《排队》是一道很优美的贪心题(我不知道它的来源,估计其难度提高+/省选),曾被出在了计算概论B的考试中。本文的受众主要是学习计算概论的同学以及老师,不假定读者有信息竞赛(OI)经验。 题目描述 有 N 名同学从左到右排成一排,第 i 名同学的身高为 hi。现在张老师想改变排队的顺序,他能 ......
The use of green energy can effectively solve the problem of air pollution
The use of green energy can effectively solve the problem of air pollution 一、the operation of green energy Green energy refers to a way of producing a ......
[ABC286G] Unique Walk 题解
洛谷题目链接 At题目链接 这题一看就很欧拉路径,但是怎么做呢? 如果只有关键边,那么连通图首先会变成一堆连通块,这时只需要分别对每个连通块进行欧拉路径判断,但是对于不属于欧拉路径的连通块,很难对加上非关键边的情况进行扩展。 如果只有非关键边,那么连通图还是变成一堆连通块,但是这些连通块全部都是合法 ......
题解 P4630 [APIO2018] 铁人两项
具体思路 题目问的是三元组 \((x,z,y)\) 使得 \(x\) 可以到达 \(z\),且 \(z\) 可以到达 \(y\),求三元组 \((x,z,y)\) 的数量。 我们转化一下问题,就是问 \(x,y\) 之间所有不重复路径的点的并集减 \(2\)。 显然,无向图中任意一个点都属于一个点双 ......
[题解] P6773 [NOI2020] 命运
P6773 [NOI2020] 命运 给你一棵 \(n\) 个节点的树,要给每条边染成 \(0\) 或 \(1\)。 有 \(m\) 个限制 \((u, v)\) 满足 \(u\) 是 \(v\) 祖先,表示 \(u\) 到 \(v\) 的路径中至少有一条边被染成了 1。 求方案数。 \(n, m ......
D - Good Tuple Problem atcoder abc 327
D - Good Tuple Problem https://atcoder.jp/contests/abc327/tasks/abc327_d 思路 https://www.zhihu.com/question/292465499 判断二分图 的常见方法是染色法:用两种颜色,对所有顶点逐个染色,且 ......
Atcoder Beginner Contest 321 G - Electric Circuit 题解 - 状压dp | 指定最低位
为了更好的阅读体验,请点击这里 题目链接:G - Electric Circuit 看到了 \(N\) 的数据范围,因此是显然的状压 dp。 不妨设 \(f_S\) 为仅使用 \(S\) 集合中的所有点,能够连成恰好 \(1\) 个连通块的方案数。\(g_S\) 为仅使用 \(S\) 集合中的所有点 ......
P9194 [USACO23OPEN] Triples of Cows P 题解
Description 给定一棵初始有 \(n\) 个点的树。 在第 \(i\) 天,这棵树的第 \(i\) 个点会被删除,所有与点 \(i\) 直接相连的点之间都会两两连上一条边。你需要在每次删点发生前,求出满足 \((a,b)\) 之间有边,\((b,c)\) 之间有边且 \(a\not=c\) ......
wzOI 202311.8-9 模拟赛题解
2023.11.9 competion 复盘 时间安排不太好,然后就是太纠结于一个想法了导致第二题不知道在想什么鬼东西,心态还是要放平啊。 A 明显大模拟,我想逃避一下,所以就skip了半个小时,发现后面三道一点思路都没有,然后就回来打 T1 大模拟。这个大模拟非常考验对工具的使用,幸好我造的数据比 ......
[题解] P5901 [IOI2009] Regions
P5901 [IOI2009] Regions 给你一棵树,每个点有颜色 \(h_i\)。 多次询问,每次询问有多少对 \((u, v)\) 满足 \(u\) 是 \(v\) 的祖先且 \(u\) 的颜色是 \(r_1\) 且 \(v\) 的颜色是 \(r_2\)。 \(n, q \le 2 \ti ......
[题解] CFgym103069G Prof. Pang's sequence
G. Prof. Pang's sequence 给一个长度为 \(n\) 的序列 \(a\),多次询问区间 \([l, r]\) 内有多少个子区间的颜色数是奇数。 \(n, m \le 10^5\)。 先按照 HH 的项链 的套路,对于每个数记一下 \(lst_i\) 表示 \(a_i\) 上一次 ......
[题解]CF938G Shortest Path Queries
Shortest Path Queries 给你一张无向连通图,支持三种操作: 插入一条边 \((u, v, w)\)。 删除一条边。 求 \((u, v)\) 之间的异或最短路。 \(n, m, 1 < 2^{30}\)。 先考虑异或最短路怎么求,这部分和 最大XOR和路径 是一样的。就是把图上的 ......
Problem Description
Problem Description 在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上。 你的任务是,对于给定的N,求出有多少种合法的放置方法。 Input 共有若干行,每行一个正整数N≤10,表示棋盘和皇后的数量 ......
[CSP-J 2021] 小熊的果篮 题解
题目链接 既然只有两种东西,我们不妨分开考虑,这里也借鉴了很多二分图题目的切入点。 假设苹果和桔子下标分别如下图所示: 苹果:1 3 6 7 9 10 桔子:2 4 5 8 那么第一次取,应该是这样取: 1 2 3 4 6 8 9 也就是先取开头比较小的,然后轮流取,注意一定保证递增,也就是对于苹果 ......
[题解]CFgym103470E Paimon Segment Tree
Paimon Segment Tree 区间加,求一段时间内的区间平方和。 \(n, m, q \le 5 \times 10^4\)。 对时间维差分一下,变成询问区间历史平方和。 离线下来扫描线,扫描线维护时间维,数据结构维护序列维。 考虑维护二元组 \((a, s)\) 表示当前位置值为 \(a ......
A2OJ Ladder 21 简要题解
https://earthshakira.github.io/a2oj-clientside/server/Ladder21.html 只记录 Difficulty level >= 8 的。有很多题是口胡的。写了的会标注提交记录。还有些很久以前写过的题就懒得搬提交记录了。 71. CF444E D ......
题解:疯狂lcm
%你赛打到一半来写个题解 link:疯狂lcm 题意,求: \[\sum_{i=1}^{n}lcm(i,n) \]不多说废话,直接开推: \[\begin{aligned} &=n\sum_{i=1}^{n}\frac{i}{gcd(i,n)}\\ &=n\sum_{d\mid n}\sum_{i= ......
【题解】CF1142E - Pink Floyd
CF1142E - Pink Floyd https://www.luogu.com.cn/problem/CF1142E 粉边构成 dag 的做法显然。 然后就是不构成 dag,那么我们可以枚举没有遍历到的点求一个 dfs 生成树,dfs 生成树的性质是删掉的边只会是返祖边,返祖边连接的两个点就不 ......
P5521 题解
一道比较不错的思维题。 对于树上的每一个节点,我们考虑设节点 \(i\) 要放 \(w_i\) 朵梅花,如果从梅岭带出 \(ans_i\) 朵梅花,就在节点 \(i\) 上放 \(w_i\) 朵梅花。 具体地,有以下两种情况: 第一种情况,梅花直接放所有子节点再放父节点。则易知 \(w_i+\sum ......
leetcode322题解
今天来解析一下一道中等的leetcode题,题目如下: 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。 你可以认为每种硬币的数量是无限的。 示例 1 ......
cf908(div2)题解(补题)
纪念这次div2让我上绿名,但还是有点遗憾,差一点就可以过三题超神了 比赛链接cf908div2 A 这题是个骗人题,整个比赛会停下来就是一个人赢够了回合数,那么在谁这停下来就是谁赢了整个比赛,不用管每回合赢得规则。 #include<iostream> using namespace std; # ......
How To Solve The Problem Of Air Pollution
How To Solve The Problem Of Air PollutionThe report "China's Carbon Neutrality and Clean Air Synergy Pathway (2023)" was published in Beijing on Novem ......
P4069 题解
简要题意 给定一棵 \(n\) 个点的树,树有边权。 对每个点维护一个集合 \(S_u\),一开始集合均包含整数 \(123456789123456789\)。 设 \({\rm dis}_{a,b}\) 为树上两点 \(a\),\(b\) 的距离。 共 \(m\) 次操作,分为如下两种: s t ......
CF650D 题解
一、题目描述: 给你一个长度为 $n$ 的序列 $a_1\sim a_n$,$0 \le a_i \le 1\times 10^9$。 现在有 $m$ 次操作,第 $i$ 次操作将位置 $p_i$ 的数变为 $v_i$,$1\le v_i\le 1\times 10^9$。 操作仅对本次有效,并不会 ......
『题解』CF213E - Two Permutations
Luogu CodeForces 首先数据范围是 \(2\mathrm{e}5\),支持枚举,问题留给了判断子序列。不简单想到了哈希,一开始想到的是树状数组,发现树状数组比较菜,就转向了线段树。 一开始先把 \(b\) 中的 \(1\sim n\) 加到线段树里,然后不断的删除最小的,加入最大的,这 ......
## [HNOI2010] 取石头游戏题解
[HNOI2010] 取石头游戏 前言: 个人感觉这道题很有难度,很有思维,这种博弈方式也值得积累。 正文: 确定博弈:首先你得知道,很多博弈题目都是假的,可能是贪心啊什么的。这道题看起来是两个人都想要自己的得分更大,但是实际上为了让自己得分更大,就必须让对方在对方的回合中取的少一些。因此这肯定是博 ......
P2146 [NOI2015] 软件包管理器 题解
[NOI2015] 软件包管理器 题目背景 Linux 用户和 OSX 用户一定对软件包管理器不会陌生。通过软件包管理器,你可以通过一行命令安装某一个软件包,然后软件包管理器会帮助你从软件源下载软件包,同时自动解决所有的依赖(即下载安装这个软件包的安装所依赖的其它软件包),完成所有的配置。Debia ......
Balance Addicts 题解
Balance Addicts 题目大意 给定序列 \(a\),求有多少种合法的划分方案。 定义一种划分方案是合法的当且仅当划分出的各段序列的和构成回文序列。 思路分析 一种不太一样的做法。 我们先对 \(a\) 做一遍前缀和,得到 \(s\)。 观察各段序列的和形式: \[s_{p_1},s_{p ......