摘要: CF1650E 原题链接 ←CLick it 题目大意:有一段$0$到$d$的数轴$(d < 1e9)$,有$n$个点$(n < 1e5)$,第$i$个点的坐标为$a_i$($a_i$单调递增且不等),定义第$i$个点的值为$a[i] - a[i - 1] - 1$(\(a[0] = 0\)),现在 阅读全文
posted @ 2022-03-11 14:09 Muly 阅读(64) 评论(0) 推荐(0)
摘要: 原题链接 ← Click it 题目大意:简言之就是给你一个森林,问你能不能用$n - m - 1$条边生成一个每个点度数为$d_i$的树。 解题思路:首先判断每个点的度数之和是否为$2 * n - 2$,如果不等于,那么直接输出$-1$就可以了。其次考虑如何连边,对于每一个连通块而言(用并查集维护 阅读全文
posted @ 2022-03-07 20:04 Muly 阅读(71) 评论(2) 推荐(0)
摘要: 图的存储 直接存储 //代码更少的做法 vector<tuple<int,int,int>> e(m); for(auto &[f, t, w] : e) { cin >> f >> t >> w; // -- u, -- v; } // struct edge { int f, t, w; }; 阅读全文
posted @ 2022-02-13 13:49 Muly 阅读(74) 评论(0) 推荐(0)
摘要: 基础数据结构 单链表 struct link{ int head; struct node { int val, ne; } vector<node> a; link() { head = -1; } void insert(int x) { a.push_back({x , head}); hea 阅读全文
posted @ 2022-02-13 13:48 Muly 阅读(19) 评论(0) 推荐(0)
摘要: 二分法: 对于某些问题,如果我们从正面直接求解非常困难或者根本不可能,但如果这个问题的解空间是有限的,那么我们就可以判断解空间中的每一个可能的答案来寻找这个问题的解。我们可以选择线性地遍历整个解空间,但是如果数据足够多,那么即便是计算机也未必可以很快的求出解,那么通过我们人为的观察,如果这组数据满足 阅读全文
posted @ 2022-02-13 12:08 Muly 阅读(60) 评论(0) 推荐(0)
摘要: 原题链接 ← Click it 这题难产了快一个月终于决定要攻克下来 题目大意:现在你手里有$n$件物品,它们的价值分别是$a_1,a_2,...,a_n$,你现在可以和一个商人交换物品,他有$m$件物品,价值分别为$b_1,b_2,...,b_m$,价值为$w$的物品,最多可以与价值为$w + k 阅读全文
posted @ 2022-02-09 12:22 Muly 阅读(72) 评论(0) 推荐(0)