自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 2.16 每日总结

拆地毯//prim#include <bits/stdc++.h>using namespace std;const int maxn = 2e5 + 10; struct node { int x,y,z;}edge[maxn];bool cmp(node a,node b) { return a.z > b.z;}int fa[maxn];int n,m,u;long long sum;int get(int x) { return x

2022-02-16 21:32:39 375

原创 2.15 每日总结

kruskal (克鲁斯卡尔算法)以边为单位,进行排序运用结构体,把x,y(两个边)z(距离)存到结构体中sort快排对进行排序 struct node { int x,y,z; }edge[maxn]; bool cmp(node a,node b) { return a.z < b.z; } for(int i = 1; i <= m; i ++) { cin >> edge[i].x >> edge[i].y &gt

2022-02-15 23:36:56 466

原创 2/13每日总结

P1359 租用游艇#include <bits/stdc++.h>using namespace std;int a[210][210];int main (){ memset(a,0x3f,sizeof(a)); //将数组a中所有值变成最大值 int n; cin >> n; for(int i = 1;i <= n - 1;i ++){ for(int j = i + 1;j <= n;j ++){ if(i == j){

2022-02-13 22:14:04 526

原创 2.10每日总结

【模板】KMP字符串匹配#include <bits/stdc++.h>using namespace std;#define MAXN 1000000int next[MAXN];void get_next (string T,int *next){ //得到next数组 int j = 0; next[0] = 0; int i = 1; for(i = 1;i < T.size();i ++){ while(j > 0 &&

2022-02-10 22:23:48 324

原创 2.9每日总结

于是他错误的点名开始了#include <bits/stdc++.h>using namespace std;map<string,int>tt;int main (){ int n, m; cin >> n; string a; while(n --){ cin >> a; tt[a] = 1; } cin >> m; while(m --){ string b; cin >> b;

2022-02-09 22:08:09 670

原创 初学KMP

文本串 aabaabaaf模式串 aabaaf前缀表 next数组前缀 (包含首字母,不包含尾字母)a aa aab aaba aabaa后缀 (包含尾字母,不包含首字母)f af aaf baaf abaaf关键 最长相等前后缀a 0aa 1aab 0aaba 1aabaa 2aabaaf 0a a b a a f0 1 0 1 2 0naxt 数组i 后缀末尾j 前缀末尾分四部1 初始化2 前后缀不相同3 前后缀相同

2022-02-08 21:47:31 219

原创 1.23 每日总结

一 早上1 看书并网上学习 了解了new和malloc的区别1. 参数使用new操作符申请内存分配时无须指定内存块的大小,编译器会根据类型信息自行计算。而malloc则需要显式地指出所需内存的尺寸。2. 返回类型new操作符内存分配成功时,返回的是对象类型的指针,类型严格与对象匹配,无须进行类型转换,故new是符合类型安全性的操作符。而malloc内存分配成功则是返回void * ,需要通过强制类型转换将void*指针转换成我们需要的类型。3...

2022-01-23 20:54:08 141

原创 1.21 每日总结

一 早上看视频,总结并查集(2.5h)1 找根节点int find_root (int x,int parent[]){ int x_root = x; while(parent[x_root] != -1){ x_root = parent[x_root]; } return x_root;}int fd(int x){ if(parent[x]==x) return x; else return parent[x]=fd(parent[x]);

2022-01-21 22:07:55 212

原创 1.19 每日总结

一 早上1 看书 并理解并查集并查集,并查集是一种树形结构,又叫“不相交集合”,保持了一组不相交的动态集合,每个集合通过一个代表来识别,代表即集合中的某个成员,通常选择根做这个代表。也就是说,并查集是用来处理不相交集合类型问题,如问不相交集合有几个。给定节点,找到该节点所在集合元素个数,当然这只是水题。并查集会与其他算法结合着考,如LCA中的tarjian算法。后续博客会整理。并查集,顾名思义,主要分三部分。一:合并:给出两点关系,如果属于同一集合,进行merge二:查:在合并时,需要先写出

2022-01-19 23:19:52 462

原创 1.18每日总结

一 早上1 看大话数据结构 了解二叉树的遍历 (2h)二 下午和晚上1 做洛谷题 (4h)二叉树#include <bits/stdc++.h>using namespace std;int n;string a;int main (){ cin >> n; cin >> a; for (int i = 2;i <= n;i ++){ string aa; cin >> aa; int x.

2022-01-18 21:06:09 386

原创 1.17每日总结

1 早上1 洛谷题 (2h)#include<stdio.h>​//using namespace std;​int n,a[1000001];​void fast(int l,int r){ int mid = a[(l + r) / 2]; int i = l,j = r; do{ while(a[i] < mid) i ++; while(a[j] > mid) j --; ...

2022-01-17 22:07:53 238

原创 预备役的那些事--括号匹配

想必大家都会普通的括号匹配了吧(栈的应用),今天给大家分享一个不同的括号匹配。 今天就把我们最喜爱的代码用上。上题目。欢迎大家加入ACM!要深入的学习ACM的相关知识,首先就必须学会一门编程语言,推荐C/C++。不过对于初学者,因为没编过多少代码,经常出现变异错误,其实就是语法错误。现在要你检查一段代码的语法是否否正确。为了简化问题,我们只检查 (、)、{、} 括号是否匹配了,并且在输入的代码中不包含字符的'(',')','{','}'。其他语法错误不检查,...

2021-12-17 00:31:02 74

原创 预备役的那些事--栈与队列

对于栈和队列,想必大家都很熟悉吧! 今天我来分享一道栈和队列结合在一起的题目。 题目如下:冰冰子最近新学习了队列和栈两种重要的数据结构,他知道它们具有push 和pop操作。而冰冰子现在想同时研究栈和队列,于是,他开始了一个实验。现在,假设队列和栈都是空的。给定一系列push k和pop操作之后,冰冰子想知道队列和栈中分别存的数字。若队列或栈已经空了,仍然接收到pop操作,则输出error。Input第一行为m,...

2021-12-15 23:21:18 1079

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除