上一页 1 2 3 4 5 6 ··· 8 下一页
摘要: 题意: 给你n个点和m条双向边,让你在满足两个老师不相邻的情况下输出老师的点的集合。 思路 可以发现是一个染色问题,让你输出染色为某个值的所有点。 $vis[i] = 1$表示染成学生,$vis[i] = 2$表示染成老师。 假设将u染色为2,则与其相邻的边必须全部染为1 如果图不联通输出NO。 # 阅读全文
posted @ 2021-01-17 19:25 waryan 阅读(37) 评论(0) 推荐(0) 编辑
摘要: D. Strange Definition 题目大意: 给你$n$个数,$q$次询问。 其中$x$和$y$相邻需要满足$lcm(x,y) / gcd(x,y)$是一个平方数。 每经过1秒,相应的序列会变为和他相邻的集合的乘积。 定义$d_i$是和$a_i$相邻的元素的个数。让你求最大的$d_i$ 思 阅读全文
posted @ 2021-01-17 11:37 waryan 阅读(87) 评论(0) 推荐(0) 编辑
摘要: D. Program 题意 给你一个$x$初始值为0,然后给你一系列$+-\(操作,问你忽略掉\)[l, r]$区间的操作后,经过一系列操作,操作过程中会出现多少个不同的数字。比如说:0,1,2算三种,0,1, 0算2种 思路 容易发现一个区间$[x,y]$其中出现的数的可能有$max([x,y]) 阅读全文
posted @ 2021-01-16 22:26 waryan 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 题目 下图转自“英式没品笑话百科”的新浪微博 —— 所以无论有没有遇到难题,其实都不用担心。 博主将这种逻辑推演称为“逻辑自洽”,即从某个命题出发的所有推理路径都会将结论引导到同一个最终命题(开玩笑的,千万别以为这是真正的逻辑自洽的定义……)。现给定一个更为复杂的逻辑推理图,本题就请你检查从一个给定 阅读全文
posted @ 2020-12-01 13:08 waryan 阅读(579) 评论(0) 推荐(0) 编辑
摘要: Codeforces Round #686 (Div. 3)E. Number of Simple Paths 题意 给你n个点n条边的图,让你求树上的简单路径数。 简单路径:从a->b的方法,需要注意的是1->2>3,3->2->1算一种 思路 显然建成后的图是一棵树多了一条边,这种图又叫环基树。 阅读全文
posted @ 2020-11-25 19:57 waryan 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 题意 给你n个点m条边的无向连通图。并且给你k个分身。每个分身在一个晚上只能经过$(2 * n - k - 1) / k$个点,并且经过的相邻的两点之间必须有连边(这些点可以重复)。想知道存不存在一种方案使得每个点至少被一个分身经过。 思路 根据$2*n$和只能经过相邻的点的提示,我们想到欧拉序,在 阅读全文
posted @ 2020-11-23 20:40 waryan 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 题意 给你两个字符串$A,B$,让你从$A,B$中找到连续的子串$C$,$D$其$4 * LCS(C,D) - |C| - |D|$最大,$LCS$是最长公共子序列 思路 最长公共子序列的变形,只需要求出每一步的贡献即可。 当$s1[i]==s2[j]\(时,贡献\)+2$,但是需要注意负数的情况 阅读全文
posted @ 2020-11-16 12:32 waryan 阅读(66) 评论(0) 推荐(0) 编辑
摘要: 题意 给你一个上界$W$和一系列权值$w_i$,让你找到权值中任意一个或多个的和满足$(W + 1) / 2\leq sum \leq W$ 思路 从大到小贪心。 证明: ​ 假设我贪到了一个这个数本身是满足$(W + 1) / 2\leq sum \leq W$那么我可以直接输出。 ​ 假设所有的 阅读全文
posted @ 2020-11-16 12:31 waryan 阅读(115) 评论(0) 推荐(0) 编辑
摘要: Codeforces Round #680 (Div. 2, based on Moscow Team Olympiad)C. Division 题意 让你找到最大的$x$满足 \[ p_i \% x == 0\\ x \% q_i !=0 \] 思路 分为三类情况: 如果 \(p < q\),那么 阅读全文
posted @ 2020-11-07 11:55 waryan 阅读(80) 评论(0) 推荐(0) 编辑
摘要: 题意 给你n个点m条边,并且保证整个图是仙人掌。 仙人掌:每条边仅属于1条或者0条回路 且无重边和自环 让你删掉一些边使其变成一棵树(拥有点数-1条边) 注意一个点也是森林 图可能是不联通的 思路 考虑环,显然一个环可以随便去掉几条边但是至少一条(也就是说不能是$C_n0$)$2$-1,然后考虑非环 阅读全文
posted @ 2020-10-18 22:48 waryan 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 题意 给你长度为3的字符串其可以变成{B, C, D, F, G, T, V, X, Y, Z}中的一种。 给你一字符串str有{B, C, D, F, G, T, V, X, Y, Z}组成,让你变成相应的长度为3的字符串且要加R使其变成{B, C, D, F, G, T, V, X, Y, Z} 阅读全文
posted @ 2020-10-18 22:31 waryan 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 题意 去掉一段连续的区间后累加 思路 枚举每一位的贡献,假设该位没有被删除。 从左到右第$i$位,长度为$n$ 假设删除该位前面连续的区间 \[ \frac{1}{2}*(i-1)*i*str[i]*10^{n-i} \] 在前面任取一段连续的区间可能数为$C_i^2$,乘以$str[i]$的贡献 阅读全文
posted @ 2020-10-05 21:42 waryan 阅读(240) 评论(1) 推荐(1) 编辑
摘要: 题意 根据题给的操作,让你将所有的数字都变为一样的 思路 在$3*n$的操作内我们去构造。 我们将所有的数先加到a[1]上,然后再去分配使每个数相等。 对于$i|a[i]$的可以直接都加到$a[1]$ 对于不能整除的情况可以先给$a[i]+(i-a[i]%i)$,然后再进行操作一 算法的正确性: h 阅读全文
posted @ 2020-10-04 13:32 waryan 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 题意 给你一个长度为n的数组,让你找到以i为长度的子段中都出现的最小的数(必须每个长度为i的子段都出现) 思路 首先观察题目发现$1\leq a[i]\leq n\leq 3*10^5$,也就是说我们可以通过枚举去解决这个问题,让我们考虑枚举每两个相同数字的之间的最大距离,也就是说这个距离范围内可以 阅读全文
posted @ 2020-10-04 13:21 waryan 阅读(86) 评论(0) 推荐(0) 编辑
摘要: 思路 已知是求最长的连续因子,那么我们枚举每一种起始因子的可能,然后枚举最长的可能。 起始因子为$i$,长度为$sum$。 #include <bits/stdc++.h> using namespace std; #define int long long signed main(){ int n 阅读全文
posted @ 2020-09-01 17:50 waryan 阅读(203) 评论(3) 推荐(2) 编辑
上一页 1 2 3 4 5 6 ··· 8 下一页