![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
STL
小黑哎呀
这个作者很懒,什么都没留下…
展开
-
洛谷 P3378 【模板】堆
洛谷 P3378 【模板】堆洛谷 P3378 【模板】堆菜鸟生成记(90)复习一下数据结构的堆排序,顺带复习一下堆,在洛谷找个板子题练一下,还行;这一题还可以用优先队列priorityqueue,STL yyds[手写堆]#include<iostream>#include<stdio.h>using namespace std;const int N=1e6+10;int a[N];void heap1(int *a,int rt,int n) {//删除堆顶原创 2021-11-17 09:54:03 · 557 阅读 · 0 评论 -
PIPI OJ 1273: 三个有序数组的交集
菜鸟生成记(74)每周一水这道早就写过了,一直卡着(以前蒻羁不会STL),这一下痛快了1273: 三个有序数组的交集#include<bits/stdc++.h>using namespace std;map<int,int>s1,s2,s3;int main(){ int a,b,c,x; cin>>a>>b>>c;//1<=a,b,c<=1e5; int max1=0; //三个数组元素的范围不确定,题上没原创 2021-06-14 14:35:32 · 203 阅读 · 0 评论 -
洛谷 P1090 [NOIP2004 提高组] 合并果子(优先队列&&哈夫曼树的构造原理)
@P1090 NOIP2004 提高组 合并果子 菜鸟生成记(61)n堆糖果合为一堆,代价最小(哈夫曼树构造)n<=10000;数据不是很大,可以用vector< int >动态保持数组升序或降序,模拟优先队列;数据再大一些vector就很容易超时->堆石子AC vector#include<bits/stdc++.h>using namespace std;int main(){ int n,x; long long sum=0; vec原创 2021-05-12 18:18:38 · 224 阅读 · 0 评论 -
PIPI OJ 1143: 堆石子(priority_queue优先队列应用)
菜鸟生成记(59)1143: 堆石子优先队列参考—>这里这一题大致思路和构造 【哈夫曼树】的思路很像;将n个石堆合并成一堆;就像构造哈夫曼树中将n个结点加入到一棵树中(代价最小);1e5的数据;第一次用vector写的直接超时75%,又在洛谷上求助了一下dalao,然后找到了这个数据结构–priority_queue优先队列AC代码#include<iostream>#include<queue>using namespace std;priority_que原创 2021-05-10 18:07:08 · 142 阅读 · 4 评论 -
洛谷 P4305 [JLOI2011]不重复数字(unordered_map(哈希表))
菜鸟生成记(58)P4305 不重复数字一道STL练习水题这一道题的题意很适合map,但是数据太大了O(lngn)的查找效率也有点儿力不从心;O(lngn)都不行的话,那只能用哈希表查找了;unordered_map理论查找效率O(1)#include<iostream>#include<cstring>#include<cstdio>#include<tr1/unordered_map>//奇怪的头文件using std::tr1::uno原创 2021-05-07 21:43:11 · 545 阅读 · 0 评论 -
PIPI OJ 1334: PIPI计数(unordered_map的应用)
菜鸟生成记(57)1334: PIPI计数本以为就是一个简单STL查找的水题,谁曾想被卡卡时间了用map+输入输出挂 超时20%;map都超时了,很显然不是让用map,而是比map查找效率更高的数据结构;map内置数据结构为红黑树查找和储存效率O(logn);unordered_map内置数据结构为哈希表(散列表);哈希函数选的好的话,散列地址不大量冲突的话,储存效率O(1),也就是常量级;查找应该也是O(1);那这效率就很可观了(这好的数据结构不是蒻羁想到,是我在洛谷上从dalao那问来的)u原创 2021-05-07 11:51:35 · 416 阅读 · 0 评论 -
洛谷 P5318 【深基18.例3】查找文献(图的遍历DFS BFS)
菜鸟生成记(55)这是一个dfs和bfs的模板题,但是洛谷的出题人就喜欢在模板题上挖坑;写了一大堆文字就为隐藏两个坑(1):n(节点数)<=1e5;5000左右用邻接矩阵就会爆栈,所以只能用邻接表存图;这个坑我没踩(因为以前踩得多了,长记性了)(2)一个节点连接多个,从该点遍历时先遍历编号小的;(这个坑踩到,大意了,看了一眼样例输入输出就直接写了,然后就全W了)#include <iostream>#include<vector>#include<queue&原创 2021-05-04 21:28:06 · 449 阅读 · 0 评论 -
洛谷 P1102 A-B 数对(map)
菜鸟生成记(53)这一题归类于二分查找,但是map也是可以胜任的(map的树形查找和二分的树形查找,效率应该都是O(lg2n))#include<iostream>#include<cmath>#include<map>using namespace std;int main(){//map自动排序,默认升序 int n; long long A,C,A_num=0; long long ans=0,sum=0;//sum必须是long long,不然原创 2021-05-04 11:10:34 · 313 阅读 · 0 评论 -
洛谷 P2249 【深基13.例1】查找(手写二分查找+STL lower_bound()+map)
菜鸟生成记(52)P2249 【深基13.例1】查找二分查找的模板题,也是map的模板练习题map吸氧AC代码(不开O2优化,T两个点;讲真的,map的红黑树查找效率不低啊!居然会T)#include<iostream>#include<algorithm>#include<map>#include<vector>using namespace std;const int N=1e6+10;int main(){ int n,k,x;原创 2021-05-03 22:44:08 · 448 阅读 · 0 评论