上一页 1 2 3 4 5 6 7 8 ··· 14 下一页
摘要: A 根据性质,\(a,b,c\) 中的最大值一定会在 $x,y,z $ 中出现两次 #include <bits/stdc++.h> using namespace std; int main() { int t; cin >> t; int a[3]; while(t --) { memset(a 阅读全文
posted @ 2020-07-18 18:12 南风-- 阅读(79) 评论(0) 推荐(0) 编辑
摘要: B 计算偶数位置上的奇数 和 奇数位置上的偶熟 个数是否相等, 不相等的话,就不可能变成 \(good\) 相等的话,每次$swap$ 一下消除一对,最小的操作数就是偶数(奇数)的个数 #include <bits/stdc++.h> using namespace std; int main() 阅读全文
posted @ 2020-07-18 00:05 南风-- 阅读(137) 评论(0) 推荐(0) 编辑
摘要: B 只有两种操作 \(*2\) 和 \(/6\) 满足这种情况的 \(n=2^a\times3^b\) 才能变成 $1$ 第一步 把多余的 $3$ 全部 \(\times2\) 变成 $6$ 操作次数 \(b-a\) 这之后,$2$ 和 $3$ 的因子数量相等即 \(a+(b-a) == b\) \ 阅读全文
posted @ 2020-07-17 00:56 南风-- 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 因为边权都是 1 ,直接可以用BFS来求最短路 在BFS的过程中,如果当前层可以由上一层转化过来,就进行计数 #include <bits/stdc++.h> using namespace std; const int N = 1e6 + 10,M = 2e6 + 10,mod = 100003; 阅读全文
posted @ 2020-06-21 21:12 南风-- 阅读(59) 评论(0) 推荐(0) 编辑
摘要: 建一个正向图和反向图,(都存到一个地方,反向图的节点加 n 就好了),跑两边 Dijskra #include <bits/stdc++.h> using namespace std; const int N = 1e3 + 10,M = 1e5 + 10,INF = 0x3f3f3f3f; typ 阅读全文
posted @ 2020-06-21 18:30 南风-- 阅读(75) 评论(0) 推荐(0) 编辑
摘要: Floyd算法深刻理解 最开始只允许经过1号顶点进行中转,接下来只允许经过1和2号顶点进行中转……允许经过1~n号所有顶点进行中转,求任意两点之间的最短路程。用一句话概括就是:从i号顶点到j号顶点只经过前k号点的最短路程。 因为给的时间是不下降的序列,所以肯定要从第一个村庄开始修路,这样用时间来判断 阅读全文
posted @ 2020-06-21 17:45 南风-- 阅读(46) 评论(0) 推荐(0) 编辑
摘要: 分成两部 求出树的重心 用$BFS$ 求出所有点到重心的距离 #include <bits/stdc++.h> using namespace std; const int N = 5e4 + 10; int e[N*2],ne[N*2],h[N],idx,rt,mds[N],ds[N],n,sum 阅读全文
posted @ 2020-06-21 11:53 南风-- 阅读(67) 评论(0) 推荐(0) 编辑
摘要: 求重心的本质,其实就是枚举每一个节点的所有子树,使得该节点中的最大子树最小化。 #include <iostream> #include <cstring> using namespace std; const int N = 2e5 + 10; int e[N],h[N],ne[N],mds[N] 阅读全文
posted @ 2020-06-21 11:33 南风-- 阅读(83) 评论(0) 推荐(0) 编辑
摘要: 树的直径 $dfs1$求直径的一端点 $dfs2$求整个直径的长度,并保存下直径上的所有点 然后$for$一边 \(f\) 数组(保存下来的点),求出中点 $dfs3$用$mid$为根来统计所有节点的深度,并算出每个节点能到达的最大深度 然后求出相对深度,排序之后,前$ k$ 个 即满足题目要求,输 阅读全文
posted @ 2020-06-19 15:43 南风-- 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 两次$DFS$ \(O(n)\) 第一次随机从一个点出发,寻找距离当前点,最远的一个叶子节点,命名为$pos$ 然后从 \(pos\) 出发,寻找距离$pos$ 最远的一个叶子节点,这段距离就是树的直径 #include <bits/stdc++.h> using namespace std; co 阅读全文
posted @ 2020-06-18 23:05 南风-- 阅读(91) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 14 下一页