摘要:
最短路 单源最短路 Dijkstra算法 边权非负 # include <bits/stdc++.h>using namespace std;typedef long long LL;struct Dijkstra{ #define MAXN 1234 #define INF 0x3f3f3f3f 阅读全文
posted @ 2022-02-27 14:07
fengzlj
阅读(49)
评论(0)
推荐(0)
摘要:
最小生成树 一、Krustral 克鲁斯卡尔算法 /* https://vjudge.net/problem/HDU-1863 复杂度 E*log(E) 适用于稀疏图*/# include <bits/stdc++.h>using namespace std;const int MAXN=100+ 阅读全文
posted @ 2022-02-27 14:06
fengzlj
阅读(113)
评论(0)
推荐(0)
摘要:
G Lucky 7 in the Pocket 签到题,然而因为刚睡醒打错一个字母WA了三次,还活生生改不出来,重构才过,?,队友们,我对不起你们。。。 # include <bits/stdc++.h> using namespace std; int main() { int t; scanf( 阅读全文
posted @ 2022-02-27 14:03
fengzlj
阅读(53)
评论(0)
推荐(0)
摘要:
二分图带权最大匹配(二分图最优匹配) KM算法在稠密图上效率高于费用流。局限性:只能在满足“带权最大匹配一定是完备匹配”的途中正确求解。 若相等子图中存在完备匹配,则这个完备匹配就是二分图的带权最大匹配。 KM算法 O(n^4) 1-N 和 0 -N 全局一致; u和v一致; # include < 阅读全文
posted @ 2022-02-27 14:03
fengzlj
阅读(84)
评论(0)
推荐(0)
摘要:
Trie const int maxnode=1e6+100;const int sigma_size=26;struct Trie{ int ch[maxnode][sigma_size];//存储节点信息,构造为树,ch[i][j]表示第i个节点字母j的节点的位置 int val[maxnode 阅读全文
posted @ 2022-02-27 14:02
fengzlj
阅读(107)
评论(0)
推荐(0)
摘要:
1004 Vacation 说是大模拟,其实应该还是算一个思维题,想到了就可以比较简单的写出来,不然就是像我一样写两个半小时出来疯狂wa,还是太菜了QAQ 第一种解法: 二分时间,感觉这种解法对这类题目应该都可以,只要数据稍微友好一点,不要精度不够,double因该是不会爆掉的,他的数据范围很大 b 阅读全文
posted @ 2022-02-27 14:02
fengzlj
阅读(39)
评论(0)
推荐(0)
摘要:
v> A 应为数据范围很小可以直接暴力判断 C 规律也想到了,但是想歪了一个点,就是如果当前数量比较小的话,那么之前比他数量大的应该全部都 加进来,而不是只加一部分。 注意初始化 D 想到了一个规律,但是无意识的忽略了题目应该是如果尺寸满足就全部应该是发体恤的,不能只发一部 分 E 博弈论SG函数又 阅读全文
posted @ 2022-02-27 14:00
fengzlj
阅读(16)
评论(0)
推荐(0)
摘要:
A # include <bits/stdc++.h> using namespace std; int main() { int n,m; int c; scanf("%d %d",&n,&m); if(m==0){ printf("1"); }else{ c=n-m; printf("%d",m 阅读全文
posted @ 2022-02-27 14:00
fengzlj
阅读(22)
评论(0)
推荐(0)
摘要:
后缀数组 # include <bits/stdc++.h> using namespace std; typedef long long LL; const int MAXN=1e5+100;int wa[MAXN],wb[MAXN],wv[MAXN],wt[MAXN]; int cmp(int 阅读全文
posted @ 2022-02-27 13:51
fengzlj
阅读(39)
评论(0)
推荐(0)
摘要:
Hash 一、Hash表 # include <bits/stdc++.h>using namespace std;const int MAXN=1e5+100;const int mod=99991;int tot=0;int snow[MAXN][10],a[10];int head[MAXN 阅读全文
posted @ 2022-02-27 13:50
fengzlj
阅读(69)
评论(0)
推荐(0)
摘要:
最小表示法 # include <bits/stdc++.h>using namespace std;//字符串从1开始存储 const int MAXN=1e5+100;char s[MAXN]; //需要定义为长度的两倍 int ans=0,n=0;void B(int id){ for(in 阅读全文
posted @ 2022-02-27 13:50
fengzlj
阅读(66)
评论(0)
推荐(0)
摘要:
KMP f数组即为next数组,表示回退位置和以当前为结尾匹配长度 # include <bits/stdc++.h>using namespace std;//字符串从0开始存储 next数组从1开始算起const int MAXN=1e3+100;int f[MAXN];char ch[MAX 阅读全文
posted @ 2022-02-27 13:50
fengzlj
阅读(60)
评论(0)
推荐(0)
摘要:
拓扑排序 # include <bits/stdc++.h>using namespace std;const int LEN_of_Node=1e4+100;const int LEN_of_Edge=2e4+100;int cnt;int n,m;int num;struct Edge{ in 阅读全文
posted @ 2022-02-27 13:49
fengzlj
阅读(140)
评论(0)
推荐(0)
摘要:
无向图的割点和桥 1.割点 # include <bits/stdc++.h>using namespace std;const int MAXN=2e4+100;vector<int> G[MAXN];int dfn[MAXN],iscut[MAXN],low[MAXN]; //iscut[i] 阅读全文
posted @ 2022-02-27 13:40
fengzlj
阅读(57)
评论(0)
推荐(0)
摘要:
v> A 签到题 B 其实一个贪心就过了,只有前面比后面快才能讲水一处到下一个也就是说会加速后面灌水,但是如果前 面比后面慢反而会托慢后面的速度,所以最后一个何时满处取决于包括最后一个在内的最慢的那一个时 间。何时所有水池都灌满取决于从前往后遍历的最慢的那一块,如果后一个比前一个慢则但钱的则为正 确 阅读全文
posted @ 2022-02-27 13:40
fengzlj
阅读(13)
评论(0)
推荐(0)
摘要:
Manacher 最长回文子串 /*https://www.cnblogs.com/fan1-happy/p/11166182.html*/# include <bits/stdc++.h>using namespace std;const int MAXN=2e7+100;char s[MAXN 阅读全文
posted @ 2022-02-27 13:40
fengzlj
阅读(165)
评论(0)
推荐(0)
摘要:
v> 丢失的数字 签到题,WA1发,数组名字还是要根据所存的数据的意义取名字,最好不要取a,aa这样的数组容易混淆 同学聚会 注意题意的理解,避免在书写过程中出现重构的现象 最大岛屿 数组范围一开始就要写对 下大雪了 强连通分量模板题 上课点名 vector 的insert复杂度理论上是O(n) , 阅读全文
posted @ 2022-02-27 13:37
fengzlj
阅读(36)
评论(0)
推荐(0)
摘要:
v> 4969 A &符号,一般取决于1个数稍等那一个,画出n^2图,找一下瑰丽就可以知道了 B 全部写出来即可找到规律,T了的话,可以剪枝,把小的那一些直接输出,不计算 C 排序,把一样的放在一起,也可认为是排序,和排序,位置有关的只要是复杂度允许都可以想到逆序对 问题。逆序对原本就是顺序逆过来的 阅读全文
posted @ 2022-02-27 13:37
fengzlj
阅读(28)
评论(0)
推荐(0)
摘要:
v> wxy 3.20 牛客练习赛55重现 4954 A 签到题 B 大胆猜测小心验证,一定要从反面验证 C 如果是定义题的话,一定要从定义出发,不能想当然 除和取模:要先除才能取模,不能先取模再除 E 式子可以拆开分解,lca的定义再次加深理解,如果i,j的lca是x的话,那么i,j分别来自x的不 阅读全文
posted @ 2022-02-27 13:37
fengzlj
阅读(25)
评论(0)
推荐(0)
摘要:
v> A 签到题 考虑全面,是否需要和0进行比较 G 思维题 aa bb 这样的直接交换第一个a和第二个b就可以了 ab ba那么先通过一次交换把他变成上面哪一种情况,再交换即可 F 还是写的太慢了,卡了好久。。。其实有更简便的方法的 就是计算前面有多少是可以到该点是符合要求的,每遇到一次0就更新一 阅读全文
posted @ 2022-02-27 13:21
fengzlj
阅读(33)
评论(0)
推荐(0)
浙公网安备 33010602011771号