拖了一年, 今天上午终于把这道题做出来了。 基本思路 题目要求字典序最小, 而字典序是有着天然的贪心性质的, 可以比较自然地想到要应用贪心算法, 进一步地, 要思考 “某个数字最终停留在某个点上” 会对全局的删边顺序产生哪些限制。 比如有这样一条路径: \(s--^a--o--^b--o--^c-- ...
分类:
其他好文 时间:
2020-11-01 10:37:55
阅读次数:
19
LIS 的 O(n log n) 解法 LIS 也就是 f[i] 表示以 i 为结尾的最优答案, 原数列为 a。 首先可以直接用树状数组优化一下转移的复杂度, 这个方法比较naive就不说了。 另一种方法的话, 是维护一个 g 数组, 用 g[i] 记录 f 值为 i 的最小 a 值, 易证 g[1 ...
分类:
其他好文 时间:
2020-11-01 10:37:04
阅读次数:
25
这是这场比赛第二水的一题,但我并没有切。 题解: 正解其实很简单,很容易可以发现一个性质,讲一个序列排序,xor值最小的值肯定出现在相邻两个数之间, 证明:设a<b<c,那么我们只需要证明min(ab,bc)<ac设到第t位开始第一次出现a,b,c在第t位上的值不同,有两种情况: 1.(0,0,1) ...
分类:
其他好文 时间:
2020-10-31 01:40:27
阅读次数:
17
最大值最小 给定一个不降的序列 \(a\),求其中大于等于 \(x\) 的第一个数。 其实就是查找第一个合法的点。 while(l<r) { mid=(l+r)>>1; if(a[mid]<x)l=mid+1; else r=mid; } 如果当前 \(mid\) 小了,就向右寻找,当前 \(mid ...
分类:
其他好文 时间:
2020-10-31 01:33:54
阅读次数:
18
基本介绍 给定n个权值作为n个叶子节点,构造一棵二叉树,若该树的带权路径长度(wpl)达到最小,这样的二叉树为最优二叉树,也称为赫夫曼树 赫夫曼树是带权路径长度最短的数,权值较大的节点离根较近 赫夫曼树几个重要概念 1.路径和路径长度:在一棵树中,从一个节点往下可以达到的孩子或孙子节点之间的通路,称 ...
分类:
其他好文 时间:
2020-10-31 01:25:46
阅读次数:
21
一。通过CSS检测本机设备屏幕大小分配样式 1、最小尺寸分辨率1024*768(传统17寸显示器),则可以采用940px、960px、或者常用的980px作为最小宽度。 在可视区域的宽度小于 600px 的时候被应用。@media screen and (max-width: 600px) {.cl ...
分类:
移动开发 时间:
2020-10-31 01:25:31
阅读次数:
36
最小生成树(基础知识 由于不知道今年考不考最小生成树,于是我们教练让学,让学的话那我就学吧,这就是我与最小生成树的邂逅bushi Prim算法 同班的几位巨巨说,由于Prim朴素算法时间复杂度太高(O(n2)),优化过后与Kruskal是竞争关系,所以不是经常使用,但是算法思想我还是了解了一下,大概 ...
分类:
其他好文 时间:
2020-10-30 12:43:08
阅读次数:
17
docker容器启动后,怎么确认容器运行正常,怎么确认可以对外提供服务了,这就需要health check功能了。 之前对health check的功能不在意,因为只要镜像跑起来了就是健康的,如果有问题就会运行失败。在连续两次收到两个启动失败的issue之后,我决定修正一下。 遇到的问题是,一个we ...
分类:
其他好文 时间:
2020-10-29 10:34:43
阅读次数:
26
题意: 拓扑排序,输出字典序最小的。 思路:优先队列优化。 #include <iostream> #include <vector> #include <queue> #include<string.h> using namespace std; int n, m; const int N=1e5 ...
分类:
编程语言 时间:
2020-10-29 10:24:45
阅读次数:
26
常用API Math 常用方法 方法名 说明 public static int abs(int a) 返回参数的绝对值 public static double ceil(double a) 返回大于或等于参数的最小double值, 等于一个整数 Public static double floo ...