该文被密码保护。 阅读全文
posted @ 2019-11-06 20:05 Thomastine 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 在这里,我衷心感谢我为写本博客笔记而参考《算法竞赛进阶指南》,《算法艺术》系列,百度百科,以及各位巨佬们的博客。 阅读全文
posted @ 2019-11-02 20:00 Thomastine 阅读(104) 评论(0) 推荐(0) 编辑
摘要: #include <stdio.h> //int max(int intArr[], int len) 不管有没有数组大小, //int max(int intArr[6], int len)编译器都只会看作指针 int main(void) { // int a = 1,e = 9,k = 5,* 阅读全文
posted @ 2021-10-24 21:32 Thomastine 阅读(54) 评论(0) 推荐(0) 编辑
摘要: ```cpp #include #include #include #include #include #include #define rint register int #define ll long long using namespace std; templateinline void read(xxx &x) { x=0;int f=1;char c=getchar(); for(;c 阅读全文
posted @ 2019-11-14 21:57 Thomastine 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 普通版 阅读全文
posted @ 2019-11-14 21:11 Thomastine 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 简介 1. 最短路径生成树是一棵树,它的根节点为S,在这棵树上跑最短路与在原图上跑得到的d会是完全一样的。 2. 所以跑最短路再瞎搞就行了。 阅读全文
posted @ 2019-11-14 20:34 Thomastine 阅读(609) 评论(0) 推荐(0) 编辑
摘要: 简介 请求解:给出一个字符串,求与它循环同构的串中字典序最小的串。 考虑暴力,可能导致$O(n^2)$(比如aaa...aaab)。 最小表示法可以$O(n)$解决:枚举两个起点,如果这两个起点i,j开始的串在匹配到第k个时不同(假设s[i + k 1] j+k,(k在[0,k 1]内)总有Si+k 阅读全文
posted @ 2019-11-14 20:15 Thomastine 阅读(383) 评论(0) 推荐(0) 编辑
摘要: 解法 基础递推式 f[0] = 1; f[i] = (f[i 1] + m) % i; 输出时f[n]要加上1,因为推导过程是n个人在从0开始编号的情况下。 证明 略..... 阅读全文
posted @ 2019-11-14 19:44 Thomastine 阅读(110) 评论(0) 推荐(0) 编辑
摘要: "参考题解chennachuan_2004" 阅读全文
posted @ 2019-11-14 19:38 Thomastine 阅读(613) 评论(0) 推荐(0) 编辑
摘要: 简介 对于一个不存在负环的图,从起点到任意一个点最短距离经过的点最多只有 n 个。用 cnt[i] 表示从起点(假设是 1)到i的最短距离包含点的个数,初始化 cnt[1]=1,那么当我们能够用点u松弛点v时,松弛时同时更新cnt[v] = cnt[u]+1,若发现此时 cnt[v] n,那么就存在 阅读全文
posted @ 2019-11-14 19:31 Thomastine 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 简介 1. 设$a_1,a_2,a_3......a_n$为n个整数,d是它们的最大公约数,那么存在整数$x_1......x_n$使得$x_1 a_1+x_2 a_2+...x_n a_n=d$。 2. 特别来说,如果$a_1...a_n$互质(不是两两互质),那么存在整数$x_1......x_ 阅读全文
posted @ 2019-11-14 15:58 Thomastine 阅读(292) 评论(0) 推荐(0) 编辑
摘要: 有向图 无向图 阅读全文
posted @ 2019-11-14 10:02 Thomastine 阅读(113) 评论(0) 推荐(0) 编辑