首页 > 其他分享 >洛谷集合题单

洛谷集合题单

时间:2023-08-20 22:12:00浏览次数:46  
标签:set 洛谷 迭代 元素 key 集合 com 题单

发现自己的基础代码能力还有待提高

【数据结构1-3】集合 - 题单 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)


P5250 【深基17.例5】木材仓库 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

学习set的使用

搬个知乎的STL教程(九):C++ STL常用容器之 set/multiset - 知乎 (zhihu.com)

1set/multiset构造函数

查看代码
 set<T> st;//set默认构造函数: 
mulitset<T> mst; //multiset默认构造函数: 
set(const set &st);//拷贝构造函数

2set赋值操作

查看代码
 set& operator=(const set &st);//重载等号操作符 
swap(st);//交换两个集合容器

3set大小操作

查看代码
 size();//返回容器中元素的数目 
empty();//判断容器是否为空

4set插入和删除操作

查看代码
 insert(elem);//在容器中插入元素。 
clear();//清除所有元素 erase(pos);//删除pos迭代器所指的元素,返回下一个元素的迭代器。 
erase(beg, end);//删除区间[beg,end)的所有元素 ,返回下一个元素的迭代器。 
erase(elem);//删除容器中值为elem的元素。

 

4.5set查找操作

查看代码
 find(key);//查找键key是否存在,若存在,返回该键的元素的迭代器;若不存在,返回set.end(); 
count(key);//查找键key的元素个数 
lower_bound(keyElem);//返回第一个key>=keyElem元素的迭代器。 
upper_bound(keyElem);//返回第一个key>keyElem元素的迭代器。 
equal_range(keyElem);//返回容器中key与keyElem相等的上下限的两个迭代器

P5266 【深基17.例6】学籍管理 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

这个对我来说是学习了map或者说stl的earse(val)


P2814 家谱 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

很简单的字符串并查集


 P1525 [NOIP2010 提高组] 关押罪犯 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

这个的并查集思路重点是设置一个敌人数组,表示这两个罪犯不能放在一个集合,那么与a不能放在一个集合的元素都可以互相合并


P1621 集合 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

这个我用欧拉筛结果MLE,看题解用埃筛就可以了,晒到一个大于p的质数就在标记合数的时候把他们合并起来即可。

标签:set,洛谷,迭代,元素,key,集合,com,题单
From: https://www.cnblogs.com/qbning/p/17644719.html

相关文章

  • Dart对集合数组进行降序排列的方法
    在Dart中,你可以使用List的sort()方法对集合数组进行排序。要按降序排列,可以在排序方法中指定一个自定义的比较函数。以下是一种常见的降序排序方法:List<int>numbers=[3,1,4,2,5];numbers.sort((a,b)=>b.compareTo(a));print(numbers);//[5,4,3,2,1]在上述示例中,......
  • 爱心代码集合
    爱心代码集合 packageLove;​publicclassLover{    publicstaticvoidmain(String[]args){      //TODOAuto-generatedmethodstub      for(floaty=(float)1.5;y>-1.5;y-=0.15){        for(floatx=(fl......
  • 树链剖分 | 洛谷 P4114 Qtree1
    前言题目链接:洛谷P4114Qtree1前置知识:树链剖分题意给定一棵树,有修改边权和查询两点之间边权最大值两种操作,对于每个查询输出结果。解析已经在前置博客里提到,树链剖分可以将树上的任意一条路径划分成不超过\(O(\logn)\)条连续的链,保证划分出的每条链上的节点DFS序......
  • 带你了解 Stream 的使用,提升集合开发效率
    当涉及Java编程时,JavaStream是一个功能强大且高效的工具,用于处理集合数据。它提供了一种声明式的方式来操作数据,可以显著简化代码并提高可读性。在本文中,我们将深入探讨JavaStream,介绍其基本概念、常用操作和用例。什么是JavaStreamJavaStream是Java8引入的一种新的抽......
  • Python列表、元组、字典、集合、字符串
    一、代码例题1、阿凡提与国王比赛下棋,国王说要是自己输了的话阿凡提想要什么他都可以拿得出来。阿凡提说那就要点米吧,棋盘一共64个小格子,在第一个格子里放1粒米,第二个格子里放2粒米,第三个格子里放4粒米,第四个格子里放8粒米,以此类推,后面每个格子里的米都是前一个格子里的2倍,一直把64......
  • Java Collection集合体系
    Collection集合体系Collection集合常见方法List集合遍历方式什么是迭代器ArrayList集合底层LinkedList集合底层Set集合HashSet集合底层LinkedHashSet底层TreeSet底层......
  • 03-04 基本数据类型(列表、元组、字典、集合)
    一、列表1、访问列表中的值list=['red','green','blue','yellow','white','black']print(list[0])#'red'print(list[1])print(list[2])print(list[-1])#blackprint(list[-2])#whiteprint(li......
  • 普及模拟2 +【LGR-155-Div.3】洛谷基础赛 #3 &「NnOI」Round 2
    普及模拟2\(T1\)地址\(0pts\)简化题意:判断一个\(IP\)地址是否合法(数据保证字符串中存在且仅存在4个被字符分开的整数)#include<bits/stdc++.h>usingnamespacestd;#definelllonglong#definesortstable_sort#defineendl'\n'chars[100];intmain(){ freope......
  • Java集合相关知识
    1、Collection的使用importjava.util.ArrayList;importjava.util.Collection;importjava.util.Iterator;publicclassMain{publicstaticvoidmain(String[]args){//创建集合Collectioncollection=newArrayList();//添加元素......
  • 【洛谷 1157】组合的输出
    #组合的输出##题目描述排列与组合是常用的数学方法,其中组合就是从$n$个元素中抽出$r$个元素(不分顺序且$r\len$),我们可以简单地将$n$个元素理解为自然数$1,2,\dots,n$,从中任取$r$个数。现要求你输出所有组合。例如$n=5,r=3$,所有组合为:$123,124,125,134,135,145,......