- 博客(4)
- 收藏
- 关注
原创 bfs的函数
bfs的函数 void bfs(int id){ queue<pii>q; q.push(make_pair(sx[id],sy[id])); dis[id][sx[id]][sy[id]]=0; while(!q.empty()){ int x=q.front().first,y=q.front().second; q.pop(); for(int i=0;i<4;i++){ int xx=x+dx[i],yy=y+dy[i]; if(1<=xx
2021-01-23 16:03:58
430
原创 二分查找函数的解释
二分查找函数的解释 lower_bound( begin,end,num):从数组的begin位置到end-1位置二分查找第一个大于或等于num的数字,找到返回该数字的地址,不存在则返回end。则下标就是返回得出的地址减去begin的地址。 upper_bound( begin,end,num):从数组的begin位置到end-1位置二分查找第一个大于num的数字,找到返回该数字的地址,不存在则返回end。则下标就是返回得出的地址减去begin的地址。 ...
2021-01-22 20:44:17
232
1
原创 并查集的函数列举
并查集的函数列举 在做并查集的题目时常有的函数有三个。 第一个:初始化函数 void init(int n) { for(int i=1;i<=n;i++) pre[i]=i; } 第二个:查找 int find(int key) { if(pre[key]==key) return key; return pre[key]=find(pre[key]); } 第三个:合并集合 void unite(int x,int y) { int rootx=f(x); int rooty=f
2021-01-21 19:03:25
189
原创 关于stack函数的使用例题讲解
关于stack函数的使用例题讲解 本题是可以使用stack函数的典型例题,为了判断括号是否能够匹配,需要碰到’(‘时把它放进坑里,到’)'时判断有没有"(“可以和”)“抵消,有的话就删除”(",没的话就直接结束,直接输出。最后如果还有"("存在的话也是错误的。 以下是ac代码 #include <bits/stdc++.h> using namespace std; int main(){ char s[100001]; scanf("%s",s+1); stack<in
2021-01-20 19:17:15
370
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅