这题真的是非常标准的模板题啊 看到连最少的边,第一时间会想到 \(kruskal\) .这道题的难点其实就一个:你要注意到连边权最大的边使整个图联通 为什么:题意是第i个点想走到 \(pos[i]\) ,也就是说点i和点 \(pos[i]\) 必须要联通. 为什么想不到 \(kruskal\) :因为 \(kruskal\) 是最小生成树,比较难想到两条边权大的边连起来并不会影响最小权值. 扯远了进入正题: 1.怎么保证连的边的权值最大: 将边权从大到小排列,需要拿的边尽量拿(因为并不会影响最小…
排序基础 排序方法分两大类,一类是比较排序,快速排序(Quick Sort).归并排序(Merge Sort).插入排序(Insertion Sort).选择排序(Selection Sort).希尔排序(Shell Sort).堆排序(Heap Sort)等属于比较排序方法,比较排序方法理论最优时间复杂度是O(nlogn),各方法排序过程和原理见  可视化过程. 另一类是非比较排序,被排序元素框定范围的前提下可使用非比较排序方法,例如桶排序(Bucket Sort).计数排序(Counting…
The SUM problem can be formulated as follows: given four lists A, B, C, D of integer values, compute how many quadruplet (a, b, c, d ) ∈ A x B x C x D are such that a + b + c + d = 0 . In the following, we assume that all lists have the same size n .…
原题链接在这里:https://leetcode.com/problems/minimum-time-difference/description/ 题目: Given a list of 24-hour clock time points in "Hour:Minutes" format, find the minimum minutes difference between any two time points in the list. Example 1: Input: [&q…
原题链接在这里:https://leetcode.com/problems/relative-ranks/#/description 题目: Given scores of N athletes, find their relative ranks and the people with the top three highest scores, who will be awarded medals: "Gold Medal", "Silver Medal" and…
Problem J: Arithmetic Sequence Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 1766  Solved: 299[Submit][Status][Web Board] Description Giving a number sequence A with length n, you should choosing m numbers from A(ignore the order) which can form an…
传送门 可以枚举被删除的位置,然后用hash表判重,然而网上好多题解都是用 sort 判重的. 不知道为什么,int 总是过不了,换成 long long 或者是 unsigned long long 就过了 QAQ ——代码 #include <cstdio> #include <cstring> #define ULL unsigned long long #define M(a, x) memset(a, x, sizeof(a)) , MAXN = ; int n, m,…
C. String Reconstruction time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Ivan had string s consisting of small English letters. However, his friend Julia decided to make fun of him and hid…
BFS基础 广度优先搜索(Breadth First Search)用于按离始节点距离.由近到远渐次访问图的节点,可视化BFS 通常使用队列(queue)结构模拟BFS过程,关于queue见:算法与数据结构基础 - 队列(Queue) 最直观的BFS应用是图和树的遍历,其中图常用邻接表或矩阵表示,例如 LeetCode题目 690. Employee Importance: // LeetCode 690. Employee Importance/* class Employee { publi…
题目传送门 题意:在一幅图中, 问需要使得多少条边加一,使得最小生成树只有一种方案. 题解:Kruskal, sort完之后,对于相通的一个边权w,我们可以分析出来有多少边是可以被放到图里面的,然后我们再开始加边,最后 多余的边就是 可以被放进去的 - 加进去的边. 代码: /* code by: zstu wxk time: 2019/01/28 */ #include<bits/stdc++.h> using namespace std; #define Fopen freopen(&qu…