摘要:         懂事时理解原神 の 传送门 看到 概率,再看到 完全正确。 还有这样例,只有 1.000 和 0.000,然后画个图。 可以发现,从 \(1\) 开始遍历,则点 \(2\) 的距离既可能是 \(1\),又可能是 \(2\),就会出错,即只要这个图有环,则一定会出错。 #include <iostre    阅读全文
懂事时理解原神 の 传送门 看到 概率,再看到 完全正确。 还有这样例,只有 1.000 和 0.000,然后画个图。 可以发现,从 \(1\) 开始遍历,则点 \(2\) 的距离既可能是 \(1\),又可能是 \(2\),就会出错,即只要这个图有环,则一定会出错。 #include <iostre    阅读全文
 懂事时理解原神 の 传送门 看到 概率,再看到 完全正确。 还有这样例,只有 1.000 和 0.000,然后画个图。 可以发现,从 \(1\) 开始遍历,则点 \(2\) 的距离既可能是 \(1\),又可能是 \(2\),就会出错,即只要这个图有环,则一定会出错。 #include <iostre    阅读全文
懂事时理解原神 の 传送门 看到 概率,再看到 完全正确。 还有这样例,只有 1.000 和 0.000,然后画个图。 可以发现,从 \(1\) 开始遍历,则点 \(2\) 的距离既可能是 \(1\),又可能是 \(2\),就会出错,即只要这个图有环,则一定会出错。 #include <iostre    阅读全文
posted @ 2023-10-16 22:23
SilverLi
阅读(47)
评论(0)
推荐(0)
        
 
                    
                
 World Tour の 传送门 \(4 \le n \le 3000\) 说明可以用 \(n^2\) 的做法,题目要求 \(4\) 个点的最短路最长,共 \(3\) 条路经,则枚举 \(2\) 个点。 如果枚举 \(a, c\),则要找 \(b, d\),但 \(b\) 和 \(c\) 也要判断路
World Tour の 传送门 \(4 \le n \le 3000\) 说明可以用 \(n^2\) 的做法,题目要求 \(4\) 个点的最短路最长,共 \(3\) 条路经,则枚举 \(2\) 个点。 如果枚举 \(a, c\),则要找 \(b, d\),但 \(b\) 和 \(c\) 也要判断路    ![[ABC142D] Disjoint Set of Common Divisors](https://img2024.cnblogs.com/blog/3196096/202501/3196096-20250124182003545-1803099818.png) 首先我们知道,若一个数是另外两个数的公共因数,那么它肯定能整除另外两个数的最大公约数。 所以我们可以枚举最大公约数的质因数,再把这个质因数在最大公约数中除完,并且答案加一。 注意,要用 long long 不然 int 溢出之后还在循环,就会导致超时。 #include <bits/stdc++.h
首先我们知道,若一个数是另外两个数的公共因数,那么它肯定能整除另外两个数的最大公约数。 所以我们可以枚举最大公约数的质因数,再把这个质因数在最大公约数中除完,并且答案加一。 注意,要用 long long 不然 int 溢出之后还在循环,就会导致超时。 #include <bits/stdc++.h    ![[ABC141E] Who Says a Pun?](https://img2024.cnblogs.com/blog/3196096/202501/3196096-20250124182017973-364473000.png) Who Says a Pun の 传送门 看到两个完全相同的子串,考虑 dp。 设 \(f_{i,j}\) 为从第 \(i\) 项和第 \(j\) 项开始的最长相同子串,则有 \(s_i=s_j\) 时,\(f_{i,j}=\max({f_{i-1,j-1}+1},f_{i,j})\)。 注意,因为
Who Says a Pun の 传送门 看到两个完全相同的子串,考虑 dp。 设 \(f_{i,j}\) 为从第 \(i\) 项和第 \(j\) 项开始的最长相同子串,则有 \(s_i=s_j\) 时,\(f_{i,j}=\max({f_{i-1,j-1}+1},f_{i,j})\)。 注意,因为    ![[ABC135D] Digits Parade](https://img2024.cnblogs.com/blog/3196096/202501/3196096-20250124182129535-73507844.png) Digits Parade の 传送门 Solution 首先看到 \(1\le |S|\le 10^5\) 考虑 DP。 定义 \(f_{i,j}\) 表示前 \(i\) 个位置的数除以 \(13\) 的余数为 \(j\)。 则有 当 \(s_i = ?\) 时,枚举余数 \(j\)(\(0\le
Digits Parade の 传送门 Solution 首先看到 \(1\le |S|\le 10^5\) 考虑 DP。 定义 \(f_{i,j}\) 表示前 \(i\) 个位置的数除以 \(13\) 的余数为 \(j\)。 则有 当 \(s_i = ?\) 时,枚举余数 \(j\)(\(0\le    ![[ABC134E] Sequence Decomposing](https://img2024.cnblogs.com/blog/3196096/202501/3196096-20250124224150271-263634224.png) Sequence Decomposing の 传送门 前置知识 \(\texttt{multiset}\) Description 求一个数列 \(a\) 中递增子序列的最少个数。 Solution 考虑用 multiset 存每个递增子序列的最后一个数。 对于每一个 \(a_i\)(\(1\le
Sequence Decomposing の 传送门 前置知识 \(\texttt{multiset}\) Description 求一个数列 \(a\) 中递增子序列的最少个数。 Solution 考虑用 multiset 存每个递增子序列的最后一个数。 对于每一个 \(a_i\)(\(1\le     ![[ABC305E] Art Gallery on Graph](https://img2024.cnblogs.com/blog/3196096/202501/3196096-20250124224422019-1970518932.png) Art Gallery on Graph の 传送门 Problem 有一个由 \(N\) 个点 \(M\) 边的简单无向图,顶点编号为 \(1\) 到 \(N\),边的编号为 \(1\) 到 \(M\)。 第 $ i $ 条边连接着点 $ a_i $ 和 $ b_i $。 在一些点上有编号为 \(
Art Gallery on Graph の 传送门 Problem 有一个由 \(N\) 个点 \(M\) 边的简单无向图,顶点编号为 \(1\) 到 \(N\),边的编号为 \(1\) 到 \(M\)。 第 $ i $ 条边连接着点 $ a_i $ 和 $ b_i $。 在一些点上有编号为 \(    ![[ABC166F] Three Variables Game](https://img2024.cnblogs.com/blog/3196096/202501/3196096-20250124224208006-1213192149.png) Three Variables Game の 传送门 Solution 首先,我们每次操作只会修改两个数。 所以考虑 dfs 枚举操作的顺序,但是这让时间复杂度变为 \(O(2^n)\),不能接受。 但是,我们可以判断当 a < 0 || b < 0 || c < 0 时,就退出,这样可以减少绝大部
Three Variables Game の 传送门 Solution 首先,我们每次操作只会修改两个数。 所以考虑 dfs 枚举操作的顺序,但是这让时间复杂度变为 \(O(2^n)\),不能接受。 但是,我们可以判断当 a < 0 || b < 0 || c < 0 时,就退出,这样可以减少绝大部    ![[SP14930] FARIDA - Princess Farida](https://img2024.cnblogs.com/blog/3196096/202501/3196096-20250124224247690-1549412629.png) FARIDA の 传送门 Problem 给你 \(n\) 个数,如果你选了第 \(i\) 个数,就不能选第 \(i - 1\) 个数。 求最多选的数的和。 Solution 考虑 DP。 设 \(f_i\) 表示考虑到第 \(i\) 个数能获得的最大价值和。 即有如下状态转移方程式: \(f_i
FARIDA の 传送门 Problem 给你 \(n\) 个数,如果你选了第 \(i\) 个数,就不能选第 \(i - 1\) 个数。 求最多选的数的和。 Solution 考虑 DP。 设 \(f_i\) 表示考虑到第 \(i\) 个数能获得的最大价值和。 即有如下状态转移方程式: \(f_i     ![[ABC143E] Travel by Car](https://img2024.cnblogs.com/blog/3196096/202501/3196096-20250124224311331-429591145.png) Travel by Car 的 传送门 \(n\le300\) 可凭感觉进行一遍 Floyd。 然后选两个点 \(i,j\),如果 \(i,j\) 间的距离小于等于 \(l\),则将 \(i,j\) 连一条代价为 \(1\) 的边(假设 \(i,j\) 要用一桶油)。 最后再来一遍 Floyd 即可
Travel by Car 的 传送门 \(n\le300\) 可凭感觉进行一遍 Floyd。 然后选两个点 \(i,j\),如果 \(i,j\) 间的距离小于等于 \(l\),则将 \(i,j\) 连一条代价为 \(1\) 的边(假设 \(i,j\) 要用一桶油)。 最后再来一遍 Floyd 即可     浙公网安备 33010602011771号
浙公网安备 33010602011771号