![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
总结
swpu_cd
弱校acmer,努力刷题多学算法
展开
-
dp动态规划
dp 动态规划原创 2020-03-31 18:38:05 · 126 阅读 · 0 评论 -
排列组合与母函数
排列组合与母函数原创 2020-03-03 16:23:31 · 329 阅读 · 0 评论 -
二维差分
二维差分,算法原创 2020-02-14 20:42:37 · 577 阅读 · 0 评论 -
线性基学习笔记
线性基是向量空间的一组基,即是有一个集合构造出来的另一个集合,用来解决有关异或题目原创 2020-02-10 16:17:34 · 102 阅读 · 0 评论 -
2020 CCPC Wannafly Winter Camp Day7
2020 CCPC Wannafly Winter Camp Day7K、H、G、L、A原创 2020-02-07 17:20:43 · 239 阅读 · 0 评论 -
数学相关
acm-icpc数学相关知识点,线性筛素数、欧拉定理、费马小定理,miller_rabin质数测试,线性同余方程,中国剩余定理crt,扩展中国剩余定理excrt,二次剩余,原根,BSGS,Ramsey定理,莫比乌斯反演,迪利克雷卷积,杜教筛,线性逆元,polya定理,哥德巴赫猜想,阶乘相关原创 2020-01-10 15:51:17 · 328 阅读 · 2 评论 -
数位dp
学习blog:https://blog.csdn.net/wust_zzwh/article/details/52100392http://acm.hdu.edu.cn/showproblem.php?pid=4734令dp[pos][sum]表示pos位置需要满足≤\leq≤sum的个数#include <bits/stdc++.h>using namespace s...原创 2019-12-19 18:07:59 · 79 阅读 · 0 评论 -
sublime text3编译c设置使用终端打开程序
新建编译系统{ "cmd": ["g++", "${file}", "-o","${file_path}/${file_base_name}"], "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:?(.*)$", "working_dir": "${file_path}", "encoding":"cp936", "selector": ...原创 2019-12-19 17:02:45 · 277 阅读 · 0 评论 -
latex学习笔记
\documentclass[UTF8]{ctexart}\usepackage{amsmath}\usepackage{graphicx}\begin{document}\title{\LaTeX学习笔记}\author{swpu\_cd}\date{\today}\maketitle\begin{abstract} \small\centering这是一个小的居中的...原创 2019-12-17 17:57:25 · 190 阅读 · 0 评论 -
prufer编码(无根树的唯一表示)
树的编码:prufer序列初始为空。每次从树上选出一个编号最小的叶子节点,然后将与该叶子节点相邻的那个节点的编号写入prufer序列的末尾,之后从树上删掉这个叶子节点。循环这个步骤n-2次,最后得到一个长度为n-2的prufer序列编码到树:首先,将每个节点的度数设为1加上该节点在prufer序列中出现的次数。然后以下循环执行n-2次。第i次循环,选择此时度数为1的编号最小的节点u,将其与此时...转载 2019-12-10 12:20:47 · 219 阅读 · 0 评论 -
KD-Tree学习笔记
kdtree是一种用于分割k维数据空间的数据结构,主要应用于多维空间关键数据的搜索。例如:范围搜索和最近邻搜索kdtree的每个节点表示k维空间的一个点每次空间划分按照轮转法划分,即如果这次选择了在第i维上划分,则下一次就在(i+1)%k上划分int id, n, k, c;struct P { int x[5]; bool operator <(const P ...原创 2019-10-15 11:54:41 · 177 阅读 · 0 评论 -
牛客训练30.A(基础)
牛客训练30.A(基础)https://ac.nowcoder.com/acm/contest/216/A?&headNav=acm计算两个日期之间的满足回文的日期#include<bits/stdc++.h>using namespace std;const int maxn = 1e5 + 10;int mouths[13] = {0, 31, 29, 31, ...原创 2018-11-03 15:22:22 · 262 阅读 · 0 评论 -
牛客训练赛30:C
牛客训练赛30:Chttps://ac.nowcoder.com/acm/contest/216/C计算边权%2: (i, j) = (j, k) = (k, i)#include<bits/stdc++.h>using namespace std;const int maxn = 1e4 + 10;#define Pir pair<int, int>type...原创 2018-11-03 16:19:43 · 127 阅读 · 0 评论 -
(图论:并查集)关押罪犯
(图论:并查集)关押罪犯https://www.luogu.org/problemnew/show/P1525const int maxn = 2e4 + 10;const int maxm = 1e5 + 10;struct node{ int u, v, w; bool operator<(const node &x) const { ...原创 2018-11-06 10:31:19 · 153 阅读 · 0 评论 -
(图论/思维)树的重量
(图论/思维)树的重量https://www.luogu.org/problemnew/show/P1268分析问题的能力,利用树的性质设g(i, j)是i到j的距离n=2, ans = g(1, 2)n=3,第三个点要满足题意就需要从1,2的路径分叉出来ans = (g(1, 3) + g(2, 3) - g(1, 2)) / 2;n > 3, 枚举每个i >= 2求...原创 2018-11-06 10:45:01 · 190 阅读 · 0 评论 -
(博弈/sg打表)E&D
https://www.luogu.org/problemnew/show/P2148给出n对(a, b)石子堆,每次可以选择一堆去掉后将另一堆分元素到这堆,每次操作后个堆数目&gt;0即(a, b) -&gt; {(c, d) | c + d = a | c + d = b}根据分析打表,预处理每个a的c + d的sg#include &lt;bits/stdc++.h&gt;usin...原创 2018-11-09 19:03:23 · 363 阅读 · 0 评论 -
(数论)又是毕业季II
(数论)又是毕业季IIhttps://www.luogu.org/problemnew/show/P1414#include <bits/stdc++.h>#define ll long longusing namespace std;inline int re() { char q = getchar(); int x = 0; while (q &...原创 2018-11-02 16:18:14 · 143 阅读 · 0 评论 -
(数论)阶乘问题
(数论)阶乘问题https://www.luogu.org/problemnew/show/P1313#include <bits/stdc++.h>#define ll long longusing namespace std;inline int re() { char q = getchar(); int x = 0; while (q <...原创 2018-11-02 16:49:33 · 337 阅读 · 0 评论 -
(博弈/基础)三国游戏
https://www.luogu.org/problemnew/show/P1199#include <bits/stdc++.h>using namespace std;typedef long long ll;const int maxn = 500 + 5;int d[maxn][maxn];int main(){ int n, tot = 0; ...原创 2018-11-07 21:08:45 · 213 阅读 · 0 评论 -
(图论/差分约束)小K的农场
https://www.luogu.org/problemnew/show/P1993小K在MC里面建立很多很多的农场,总共n个,以至于他自己都忘记了每个农场中种植作物的具体数量了,他只记得一些含糊的信息(共m个),以下列三种形式描述:农场a比农场b至少多种植了c个单位的作物,农场a比农场b至多多种植了c个单位的作物,农场a与农场b种植的作物数一样多。但是,由于小K的记忆有些偏差,所以他...原创 2018-11-13 10:00:54 · 164 阅读 · 0 评论 -
(搜索/拓扑排序)杂务
(记忆化搜索/拓扑排序)杂务https://www.luogu.org/problemnew/show/P1113每一次去找子节点的最耗时间的任务,记录最大耗时即可。const int maxn = 1e5 + 10;int ti[maxn];struct edge { int p, nxt;} E[maxn];int head[maxn], tot, vis[maxn], ...原创 2018-11-05 19:40:28 · 128 阅读 · 0 评论 -
(博弈/SG)欧几里得的游戏
https://www.luogu.org/problemnew/show/P1290给出n, m,每个人可以用大的数减去任意倍的小的数(大的数被减后>=0),两人轮流操作,遇到一个数为0时即输#include <bits/stdc++.h>using namespace std;typedef long long ll;bool solve(int n, int m...原创 2018-11-08 17:01:45 · 311 阅读 · 0 评论 -
(博弈/nim)取火柴游戏
给出n堆火柴,两人轮流取,标准nim博弈要求输出先手必胜时第一次操作的火柴数目及位置后操作后的火柴数目#include &lt;bits/stdc++.h&gt;using namespace std;typedef long long ll;const int maxn = 500000 + 10;int a[maxn];int main(){ int n; s...原创 2018-11-08 20:41:57 · 748 阅读 · 1 评论 -
(最短路+拓扑排序)[SDOI2009]Elaxia的路线
https://www.luogu.org/problemnew/show/P2149最近,Elaxia和w的关系特别好,他们很想整天在一起,但是大学的学习太紧张了,他们 必须合理地安排两个人在一起的时间。Elaxia和w每天都要奔波于宿舍和实验室之间,他们 希望在节约时间的前提下,一起走的时间尽可能的长。现在已知的是Elaxia和w**所在的宿舍和实验室的编号以及学校的地图:地图上有N个路...原创 2018-11-15 16:14:20 · 321 阅读 · 0 评论 -
(强连通分量)[HAOI2006]受欢迎的牛
https://www.luogu.org/problemnew/show/P2341每头奶牛都梦想成为牛棚里的明星。被所有奶牛喜欢的奶牛就是一头明星奶牛。所有奶牛都是自恋狂,每头奶牛总是喜欢自己的。奶牛之间的“喜欢”是可以传递的——如果A喜欢B,B喜欢C,那么A也喜欢C。牛栏里共有N 头奶牛,给定一些奶牛之间的爱慕关系,请你算出有多少头奶牛可以当明星。分析题意发现强连通分量中出度为0的点们可...原创 2018-11-15 17:18:04 · 134 阅读 · 0 评论 -
(tarjan/割点)[POI2008]BLO-Blockade
https://www.luogu.org/problemnew/show/P3469在Byteotia有n个城镇。 一些城镇之间由无向边连接。 在城镇外没有十字路口,尽管可能有桥,隧道或者高架公路(反正不考虑这些)。每两个城镇之间至多只有一条直接连接的道路。人们可以从任意一个城镇直接或间接到达另一个城镇。 每个城镇都有一个公民,他们被孤独所困扰。事实证明,每个公民都想拜访其他所有公民一次(在主...原创 2018-11-15 21:01:37 · 303 阅读 · 0 评论 -
(同余)同余方程
https://www.luogu.org/problemnew/show/P1082求关于 x的同余方程 ax ≡ 1(modb) 的最小正整数解存个求线性同余方程组的板子#include<bits/stdc++.h>using namespace std;typedef long long ll;ll exgcd(ll a, ll b, ll &x, ll &a...原创 2018-11-12 10:25:48 · 295 阅读 · 0 评论 -
(博弈/sg)高手过招
https://www.luogu.org/problemnew/show/P2575AKN玩游戏玩累了,于是他开始和同伴下棋了,玩的是跳棋!对手是wwx!这两位上古神遇在一起下棋,使得棋局变得玄幻莫测,高手过招,必有一赢,他们都将用最佳策略下棋,现在给你一个n*20的棋盘,以及棋盘上有若干个棋子,问谁赢?akn先手!游戏规则是这样的:对于一个棋子,能将它向右移动一格,如果右边有棋子,则向右...原创 2018-11-12 11:55:05 · 175 阅读 · 0 评论 -
(倍增lca)P1967 货车运输
https://www.luogu.org/problemnew/show/P1967A国有n n座城市,编号从 1 到 n,城市之间有 m 条双向道路。每一条道路对车辆都有重量限制,简称限重。现在有 q 辆货车在运输货物, 司机们想知道每辆车在不超过车辆限重的情况下,最多能运多重的货物。输入格式:第一行有两个用一个空格隔开的整数 n,m 表示 A 国有 n 座城市和 m 条道路。接下来 ...原创 2018-11-18 17:32:16 · 137 阅读 · 1 评论 -
(图论/强联通分量)上白泽慧音
https://www.luogu.org/problemnew/show/P1726人间之里由N个村庄(编号为1…N)和M条道路组成,道路分为两种一种为单向通行的,一种为双向通行的,分别用1和2来标记。如果存在由村庄A到达村庄B的通路,那么我们认为可以从村庄A到达村庄B,记为(A,B)。当(A,B)和(B,A)同时满足时,我们认为A,B是绝对连通的,记为<A,B>。绝对连通区域是指...原创 2018-11-12 21:29:01 · 122 阅读 · 0 评论 -
带上下界的网络流
对于每条边加了个下界限制B(e),这样每条边需满足条件B(e) <= F(e) <= C(e)。1)对于无源点和汇点对于每一条边e,将其分离成两条边e’和e’’,其中的容量C(e’) = C(e) - B(e),C(e’’) = B(e)这样分离后只需要e’'满流即可步骤:新建源点S和汇点T,对原图的每一条边e = <u, v>,建立从u到v容量C(e) - B(e...原创 2018-11-14 19:45:33 · 181 阅读 · 0 评论 -
(网络流)[ZJOI2009]假期的宿舍
https://www.luogu.org/problemnew/show/P2055学校放假了 · · · · · · 有些同学回家了,而有些同学则有以前的好朋友来探访,那么住宿就是一个问题。比如 A 和 B 都是学校的学生,A 要回家,而 C 来看B,C 与 A 不认识。我们假设每个人只能睡和自己直接认识的人的床。那么一个解决方案就是 B 睡 A 的床而 C 睡 B 的床。而实际情况可能非常...原创 2018-11-14 21:32:58 · 123 阅读 · 0 评论 -
[USACO5.3]校园网Network of Schools
https://www.luogu.org/problemnew/show/P2746一些学校连入一个电脑网络。那些学校已订立了协议:每个学校都会给其它的一些学校分发软件(称作“接受学校”)。注意即使 B 在 A 学校的分发列表中, A 也不一定在 B 学校的列表中。你要写一个程序计算,根据协议,为了让网络中所有的学校都用上新软件,必须接受新软件副本的最少学校数目(子任务 A)。更进一步,我们想...原创 2018-11-16 18:46:55 · 170 阅读 · 0 评论 -
(高精度乘法)A*B problem
https://www.luogu.org/problemnew/show/P1303数论优化的fft#include <bits/stdc++.h>using namespace std;typedef long long ll;const int maxn = 3e6 + 5;const int P = 998244353;inline int qpow(int d,...原创 2018-11-15 09:05:01 · 379 阅读 · 0 评论 -
(贪心)cf#523-B.Views Matter
http://codeforces.com/contest/1061给出x,y,呈现俯视图和侧视图,求可以去掉多少块是这两个视图不改变5 63 3 3 3 310首先想到排序,由大到小,在n+1个位置增加一个0的高度块用于解第n个块。从第2个块开始对于前一个块高度更高时,已使用块数目 += 高度差对于当前块比前一块高度相等或者更大时,因为俯视图不能变,所以至少留下一块,即已使用块数...原创 2018-11-23 17:05:44 · 365 阅读 · 0 评论 -
(倍增)开车旅行
https://www.luogu.org/problemnew/show/P1081小 A 和小 B 决定利用假期外出旅行,他们将想去的城市从 1到 N编号,且编号较小的城市在编号较大的城市的西边,已知各个城市的海拔高度互不相同,记城市 i 的海拔高度为恰好是这两个城市海拔高度之差的绝对值,即d(i, j) = abs(h[i] - h[j])旅行过程中,小 A 和小 B轮流开车,第一天小 ...原创 2018-11-19 21:05:14 · 184 阅读 · 0 评论 -
(优先队列)P1631 序列合并
https://www.luogu.org/problemnew/show/P1631有两个长度都是N的序列A和B,在A和B中各取一个数相加可以得到N^2个和,求这N^2个和中最小的N个。Ai <= 1e9, Bi <= 1e9, N <= 1e5.直接暴力用优先队列存前n个,如果出现第一个比当前最大值还大的值时退出循环保障复杂度#include<bits/std...原创 2018-11-22 21:29:52 · 204 阅读 · 0 评论 -
(主席树)P1801 黑匣子_NOI导刊2010提高
https://www.luogu.org/problemnew/show/P1801题目可以用主席树直接求解,ai <= 2000000000,需要离散化。#include<bits/stdc++.h>using namespace std;const int maxn = 200000 + 10;struct in { int val, id; bool ope...原创 2018-11-22 21:31:20 · 112 阅读 · 0 评论 -
(缩点/双联通分量)P3225 [HNOI2012]矿场搭建
https://www.luogu.org/problemnew/show/P3225煤矿工地可以看成是由隧道连接挖煤点组成的无向图。为安全起见,希望在工地发生事故时所有挖煤点的工人都能有一条出路逃到救援出口处。于是矿主决定在某些挖煤点设立救援出口,使得无论哪一个挖煤点坍塌之后,其他挖煤点的工人都有一条道路通向救援出口。请写一个程序,用来计算至少需要设置几个救援出口,以及不同最少救援出口的设置方...原创 2018-11-17 22:22:48 · 162 阅读 · 0 评论 -
(区间第k大)黑匣子_NOI导刊2010提高(06)
https://www.luogu.org/problemnew/show/P1801可以用multiset水过,发现有超多数据结构可以处理这道题。==线段树:https://blog.csdn.net/weishengmingerfendou/article/details/47144419fhq-treap:https://blog.csdn.net/CABI_ZGX/article/d...原创 2018-11-20 11:28:03 · 90 阅读 · 1 评论