E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
AcWing算法提高
acwing
21并查集
合并集合一共有n个数,编号是1∼n,最开始每个数各自在一个集合中。现在要进行m个操作,操作共有两种:Mab,将编号为a和b的两个数所在的集合合并,如果两个数已经在同一个集合中,则忽略这个操作;Qab,询问编号为a和b的两个数是否在同一个集合中;输入格式第一行输入整数n和m。接下来m行,每行包含一个操作指令,指令为Mab或Qab中的一种。输出格式对于每个询问指令Qab,都要输出一个结果,如果a和b在
波风一一水门
·
2024-01-09 17:49
笔记
c++
并查集
数据结构
Acwing
--836. 合并集合(并查集模板)
一共有n个数,编号是1∼n,最开始每个数各自在一个集合中。现在要进行m个操作,操作共有两种:Mab,将编号为a和b的两个数所在的集合合并,如果两个数已经在同一个集合中,则忽略这个操作;Qab,询问编号为a和b的两个数是否在同一个集合中;输入格式第一行输入整数n和m。接下来m行,每行包含一个操作指令,指令为Mab或Qab中的一种。输出格式对于每个询问指令Qab,都要输出一个结果,如果a和b在同一集合
wowon~
·
2024-01-09 17:49
并查集
数据结构
c++
算法
并查集
acwing
基础课——并查集
由数据范围反推算法复杂度以及算法内容-
AcWing
常用代码模板2——数据结构-
AcWing
基本思想:并查集是一种树型的数据结构,在近乎O(1)的复杂度来处理一些不相交集合的合并及查询问题(即所谓的并、查
我的鱼干呢w
·
2024-01-09 17:17
acwing算法基础课二刷记录
数据结构
算法
c++
AcWing
:并查集
并查集理论基础并查集的作用是什么:将两个集合合并。询问两个元素是否在一个集合当中。如果不使用并查集,要完成上述两个操作,我们需要:创建一个数组来表示某个元素在某个集合之中,如belong[x]=a,即x元素在a集合之中。那么完成第二个操作“询问两个元素是否在同一个集合”的时间复杂度为O(1),我们只需:判断if(belong[x]==belong[y])但是将两个集合合并的效率取决于两个集合中较短
clementines_
·
2024-01-09 17:17
c++
算法
数据结构
AcWing
836.合并集合(并查集)
题目(并查集好像面试挺爱考的,代码短还有思维)思路if(p[a]!=a)p[a]=find(p[a]);判断2个数是否属于同一个集合,只需要判断其根节点是否一样如果递归求根节点,会很慢,所以涉及了并查集的优化,如果不是根节点的话,可以直接一步求出根节点`也就是把a节点所在的树的根节点的值赋给a所在树的根节点,就是找到a所在树的根节点p[find(a)]=find(b)表示,将b节点所在的树连接在以
少女的英雄梦312
·
2024-01-09 17:15
练习题
acwing
836. 合并集合(并查集)
思路并查集可以判断连通块的数量,可以判断集合的大小。代码#includeusingnamespacestd;#definedbdouble#definelllonglong#definePirpair#definefifirst#definesesecond#definepbpush_back#definem_pmake_pair#defineinf0x3f3f3f3f#defineINF0x3f
做一只大熊猫
·
2024-01-09 17:45
#
并查子集
图论
算法
java
并查集(
ACWING
三道题)
1.适用题型在我个人理解,并查集是用于解决这样的问题:题目中的数据分多个集合,并且有合并的可能,有时需要查找两个元素是不是在同一集合,以及该集合中所有元素的数量。有时也需要通过两个元素在同一集合中的位置,来确定这两个元素之间的关系,2.并查集的核心函数朴素并查集:这种并查集只需要两个功能:合并和查找祖宗结点。需要的基本数据结构:p[N],用来存储每一个下标的父亲结点。查找函数intfind(int
阳光.
·
2024-01-09 17:45
算法打怪升级之路
图论
c++
数据结构
AcWing
|【并查集】合并集合
题目内容一共有n个数,编号是1~n,最开始每个数各自在一个集合中。现在要进行m个操作,操作共有两种:“Mab”,将编号为a和b的两个数所在的集合合并,如果两个数已经在同一个集合中,则忽略这个操作;“Qab”,询问编号为a和b的两个数是否在同一个集合中;输入格式第一行输入整数n和m。接下来m行,每行包含一个操作指令,指令为“Mab”或“Qab”中的一种。输出格式对于每个询问指令”Qab”,都要输出一
Leonadoice
·
2024-01-09 17:15
算法训练营
AcWing
|【并查集】食物链
题目内容动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B,B吃C,C吃A。现有N个动物,以1-N编号。每个动物都是A,B,C中的一种,但是我们并不知道它到底是哪一种。有人用两种说法对这N个动物所构成的食物链关系进行描述:第一种说法是”1XY”,表示X和Y是同类。第二种说法是”2XY”,表示X吃Y。此人对N个动物,用上述两种说法,一句接一句地说出K句话,这K句话有的是真的,
Leonadoice
·
2024-01-09 17:15
算法训练营
acwing
算法基础课:并查集
并查集模板作用:1.将两个集合合并2.询问两个元素是否在同一个集合中近乎O(1)时间复杂度完成上述操作基本原理:每个集合用一棵树表示,树根的编号就是整个集合的编号。每个节点存储它的父节点,p[x]表示x的父节点(1)朴素并查集:intp[N];//存储每个点的祖宗节点//返回x的祖宗节点intfind(intx){if(p[x]!=x)p[x]=find(p[x]);returnp[x];}//初
墨染&殇泪
·
2024-01-09 17:14
acwing
#
数据结构
算法
AcWing
836. 合并集合(并查集)
作用:高效的合并两个集合和查询两个元素是否在同一个集合,时间复杂度近O(1);原理:每个集合用一颗树来表示,树根的编号就是整个集合的编号,每个节点存储他的父节点。#includeusingnamespacestd;constintN=100010;intp[N];intfindd(intx){while(p[x]!=x){x=p[x];}returnx;}intmain(){ios::sync_w
秘制函数
·
2024-01-09 17:44
数据结构
算法
c++
数据结构
银河英雄传说
acwing
-238 并查集
题面链接:238.银河英雄传说-
AcWing
题库题面:思路:并查集,如果没有求两艘战舰之间的战舰数量,这就是一题很简单的并查集但是这题需要计算两艘战舰之间的数量,我们就需要维护一个d数组,保存的是当前战舰到战舰头的距离
Evil_boy__
·
2024-01-09 17:14
c++
数据结构
并查集
Acwing
并查集学习记录
Acwing
1250.格子游戏题意:输入:矩阵长宽为n,m次操作输出:输出一行:在第几步的时候结束。假如m步之后也没有结束,则输出一行“draw”。
haniwn
·
2024-01-09 17:13
笔记
算法
AcWing
-并查集-合并路径
文章目录并查集
acwing
-836合并路径并查集将两个集合合并询问两个元素是否在一个集合当中O(1)近乎O(1)基本原理:每个集合用一棵树来表示,树根的编号就是整个集合的编号。
superkcl2022
·
2024-01-09 17:13
#
AcWing
算法
数据结构
acwing
字典树/前缀树(Trie)
目录
AcWing
835.Trie字符串统计
AcWing
143.最大异或对lc上前缀树实现(节点型)树中为每个节点编号,每条路径表示一个原始元素,如:节点为字符,原始元素为字符串,或:节点为比特位,原始元素为一个数因为会使用节点编号查询存储矩阵的行位置所以存储矩阵的行数开可能的最多的节点个数
honortech
·
2024-01-09 17:43
算法
acwing
KMP算法
【数据结构】KMP算法(详解)#include#include#includeusingnamespacestd;constintN=1e6+10;intn1,n2;chars1[N],s2[N];vectornext_val(N);voidget_next(){//next数组中的元素为最长比配前缀的下标//这里下标从一开始,无匹配前缀的元素为0//这里的前缀匹配字符为j的下一个字符,j从0开始
honortech
·
2024-01-09 17:12
算法
AcWing
算法基础 并查集
并查集并查集解决的问题将两个集合合并询问两个元素是否在一个集合中基本原理用树的形式来维护每个集合,树根的编号就是整个集合的编号,每个节点存储他的父节点,p[x]表示x的父节点问题1,如何判断树根:if(p[x]==x);问题2,如何求x集合的编号:while(p[x]!=x)x=p[x];问题3,如何合并两个集合,px是x集合的编号,py是y的集合编号,令p[x]=y。问题2优化:某个节点找到根节
mu6y
·
2024-01-09 17:40
算法
算法
数据结构
算法学习周记4(
acwing
并查集、二分)
acwing
——836合并并查一共有nn个数,编号是1∼n1∼n,最开始每个数各自在一个集合中。
whisper_cxl
·
2024-01-09 17:10
算法
学习
acwing
并查集
目录并查集的路径压缩两种方法法一法二
AcWing
240.食物链
AcWing
837.连通块中点的数量示例并查集自写并查集并查集的路径压缩两种方法法一沿着路径查询过程中,将非根节点的值都更新为最后查到的根节点
honortech
·
2024-01-09 17:08
数据结构
c++
算法
C语言-蓝桥杯
算法提高
VIP-产生数
题目描述给出一个整数n和k个变换规则。规则:一位数可变换成另一个一位数:规则的右部不能为零。例如:n=234。有规则(k=2):2->53->6上面的整数234经过变换后可能产生出的整数为(包括原数):234534264564共4种不同的产生数问题:给出一个整数n和k个规则。求出:经过任意次的变换(0次或多次),能产生出多少个不同整数。仅要求输出个数。输入格式nkx1y1x2y2......xny
代码传奇
·
2024-01-09 06:56
C语言题目
c语言
蓝桥杯
算法
2172. Dinic/ISAP求最大流 (Dinic算法)
2172.Dinic/ISAP求最大流-
AcWing
题库给定一个包含n个点m条边的有向图,并给定每条边的容量,边的容量非负。图中可能存在重边和自环。求从点S到点T的最大流。
Landing_on_Mars
·
2024-01-08 21:13
#
网络流问题
算法
网络流
【动态规划】数位统计DP
(2)将t每一位数据抠出来,然后一位一位数字进行考虑,按照树的结构进行考虑,如下图(图片来源:网址):2.
AcWing
上的数位统计
你好世界wxx
·
2024-01-08 21:30
算法
动态规划
第五章 动态规划(8):数位DP模型
1、计数问题
ACWing
338算法思路:一定要分情况讨论首先,题目要求在[a,b]中0~9这10个数中分别出现的次数,那么我们先实现一个函数count(n,x)
路哞哞
·
2024-01-08 21:28
算法笔记
动态规划
算法
c++
欧拉函数算法总结
例题展示欧拉函数题目链接活动-
AcWing
系统讲解常用算法与数据结构,给出相应代码模板,并会布置、讲解相应的基础算法题目。https://www.
acwing
.com/problem
ykycode
·
2024-01-08 08:06
经典算法总结
数论
算法
欧拉函数
数学
数论
线性筛法
欧拉定理
费马小定理
AcWing
998. 起床困难综合症
原题链接其实上面这一堆就是想说,输入n,m以及n个数和该数所对应的运算,其中运算包括有与、或、异或三种,真正的问题就是在所有不大于m的数(非负数)中,对给定的n个数都按该数所对应的运算运算一遍后,能得到得最大的值是多少。AND表示按位与,OR表示按位或,XOR表示按位异或AcceptedCode:#include#include#includeusingnamespacestd;constintN
青春pig头少年
·
2024-01-08 08:25
AADS
算法
c++
数据结构
试除法求约数算法总结
例题展示题目链接活动-
AcWing
系统讲解常用算法与数据结构,给出相应代码模板,并会布置、讲解相应的基础算法题目。
ykycode
·
2024-01-07 15:47
经典算法总结
数论
算法
试除法
数学
数论
约数
试除法求约数
约数个数和约数之和算法总结
例题展示约数个数题目链接活动-
AcWing
系统讲解常用算法与数据结构,给出相应代码模板,并会布置、讲解相应的基础算法题目。https://www.
acwing
.com/prob
ykycode
·
2024-01-07 15:47
经典算法总结
数论
算法
数学
试除法
约数个数
约数之和
数论
约数
筛质数算法总结
题目链接活动-
AcWing
系统讲解常用算法与数据结构,给出相应代码模板,并会布置、讲解相应的基础算法题目。
ykycode
·
2024-01-07 15:46
经典算法总结
数论
算法
筛质数
数论
质数
数学
埃氏筛法
线性筛法
欧几里得算法总结
例题展示题目链接活动-
AcWing
系统讲解常用算法与数据结构,给出相应代码模板,并会布置、讲解相应的基础算法题目。
ykycode
·
2024-01-07 15:40
经典算法总结
数论
算法
欧几里得算法
辗转相除法
数论
数学
AcWing
1725 组队井字游戏 题解(春季每日一题)
AcWing
1725组队井字游戏思路很简单,我的实现代码太过复杂,下面放的有y总的简洁版代码#includeusingnamespacestd;typedefpairPCC;intans,res;charg
QingQingDE23
·
2024-01-07 15:41
每日一题
算法
AcWing
1082 数字游戏 题解(动态规划—DP—数位DP)
原题传送门#includeusingnamespacestd;constintN=15;inta,b,n;intf[N][N];//表示一共有i位,最高位为j的数的个数voidinit(){for(inti=0;inum;while(n){//把n逆序存储,这样从最高位开始遍历num时,后一位就是他的低位,符合题意num.push_back(n%10);n/=10;}intres=0;//记录方案
QingQingDE23
·
2024-01-07 15:11
动态规划-DP
动态规划
算法
AcWing
1084 数字游戏 II 题解(实体规划—DP—数位DP)
原题传送门#includeusingnamespacestd;constintN=11,M=110;intP;intf[N][10][M];//f[i][j][k]表示i位数字,最高位为j,modN为k的数字的个数intmod(intx,inty){return(x%y+y)%y;}voidinit(){memset(f,0,sizeof(f));//因为有多组测试样例,所以每次调用f需要初始化为
QingQingDE23
·
2024-01-07 15:11
动态规划-DP
游戏
动态规划
算法
AcWing
1695 果壳游戏 题解(春季每日一题)
有一些思维的简单模拟原题#includeusingnamespacestd;constintN=110;intn;intans;//记录最大分数inta[N],b[N],c[N];boolit[N];//记录石子在哪intmain(){cin>>n;for(inti=1;i>a[i]>>b[i]>>c[i];}for(inti=1;i<=n;i++){//猜石头在哪个盒子下面intcnt=0;//
QingQingDE23
·
2024-01-07 15:11
每日一题
算法
蓝桥杯
AcWing
323 战略游戏 题解(动态规划—DP—树形DP)
原题传送门#includeusingnamespacestd;constintN=1510;intn;inte[N],h[N],ne[N],idx;intf[N][2];/*f[i][0]表示第i个节点没有放士兵时,以i为根节点的子树所含的最小士兵数f[i][1]表示第i个节点放士兵时,以i为根节点的子树所含的最小士兵数*/boolst[N];voidadd(inta,intb){e[idx]=b
QingQingDE23
·
2024-01-07 15:40
动态规划-DP
动态规划
游戏
算法
蓝桥杯备赛系列 高精度
acwing
版
前言hello,好久不见。元旦玩过后该收心了,我也倒计时一下蓝桥杯考试时间,大家一起复习,一起登顶。今天讲解高精度算法。这个算法其实是给学c++同学讲的,因为python自带高精度所以不需要,且我讲到所有内容都是c++版本,今年就要报考c++,今年学好了Java可以上Java内容。不多bb了上正文正文先介绍一下为什么要用高精度。int:通常,int类型的大小是依赖于特定平台的,常见的有16位(2字
Beatmyselfonce
·
2024-01-07 14:55
蓝桥杯
职场和发展
【基础算法笔记】Prim,Kruskal,匈牙利算法
在
acwing
上学习算法的一点思考与总结匈牙利算法这个算法是个很有趣的算法,也很好用。引用
acwing
一句高赞评论:匈牙利算法准则:待字闺中,据为己有;名花有主,求他放手。
Radein
·
2024-01-07 08:48
算法
图论
笔记
c++
【基础算法笔记】贪心算法中的区间问题
在
acwing
上学习算法的一点思考和总结感受:贪心算法难在他的证明,很多时候我们都是有一个感觉,然后去猜是否能用贪心做,借助几个实例去证明贪心算法的正确性。
Radein
·
2024-01-07 08:48
算法
贪心算法
学习
c++
笔记
【基础算法笔记】dp(背包问题)
在
acwing
上学习算法时的一点思考与总结。如何理解dp思路:动态规划解决问题的方式就是将一个大问题分解成多个子问题。每个子问题的决策都会影响下一个子问题的决策,也就是i状态会受到i-1状态的影响。
Radein
·
2024-01-07 08:18
笔记
算法
c++
【算法笔记】BFS(走迷宫,八数码)
Acwing
yydsBFS(宽度优先遍历)与深度优先搜索一条路走的死的方式不同,宽度优先遍历是一层一层来搜,当一层的节点被搜索完成后,才会进入下一层。
Radein
·
2024-01-07 08:18
算法
笔记
宽度优先
洛谷 P1086:花生采摘 ← 结构体
【题目来源】https://www.luogu.com.cn/problem/P1086https://www.
acwing
.com/problem/content/description/420/【题目描述
hnjzsyjyj
·
2024-01-07 05:43
信息学竞赛
#
基础语法
结构体
莫比乌斯反演(
acwing
2702)
对于给出的n�个询问,每次求有多少个数对(x,y)(�,�),满足a≤x≤b,c≤y≤d�≤�≤�,�≤�≤�,且gcd(x,y)=kgcd(�,�)=�,gcd(x,y)gcd(�,�)函数为x�和y�的最大公约数。输入格式第一行一个整数n�。接下来n�行每行五个整数,分别表示a、b、c、d、k�、�、�、�、�。输出格式共n�行,每行一个整数表示满足要求的数对(x,y)(�,�)的个数。数据范
yusen_123
·
2024-01-05 11:51
数论
算法
acwing
1358. 约数个数和(莫比乌斯函数)
设d(x)�(�)为x�的约数个数,给定N,M�,�,求∑i=1N∑j=1Md(ij)∑�=1�∑�=1��(��)输入格式输入多组测试数据。第一行,一个整数T�,表示测试数据的组数。接下来的T�行,每行两个整数N、M�、�。输出格式T�行,每行一个整数,表示你所求的答案。数据范围1≤N,M,T≤500001≤�,�,�≤50000输入样例:27456输出样例:110121思路:推导比较麻烦;代码
yusen_123
·
2024-01-05 11:51
数论
算法
复试 || 就业day09(2024.01.04)算法篇
文章目录前言验证外星语词典在长度2N的数组中找出重复N次的元素找到小镇的法官查找共用字符数组的相对排序分发饼干分发糖果区间选点(
AcWing
)最大不相交区间数量(
AcWing
)无重叠区间关于重写小于号前言你好
辰chen
·
2024-01-05 09:36
考研
#
机试
力扣(LeetCode)
算法
考研
力扣
哈希
cpp
机试
贪心
2019-03-21 [蓝桥杯][
算法提高
VIP]开灯游戏
题目描述有9盏灯与9个开关,编号都是1~9。每个开关能控制若干盏灯,按下一次会改变其控制的灯的状态(亮的变成不亮,不亮变成亮的)。具体如下:第一个开关控制第二,第四盏灯;第二个开关控制第一,第三,第五盏灯;第三个开关控制第二,第六盏灯;第四个开关控制第一,第五,第七盏灯;第五个开关控制第二,第四,第六,第八盏灯;第六个开关控制第三,第五,第九盏灯;第七个开关控制第四,第八盏灯;第八个开关控制第五,
桐桑入梦
·
2024-01-04 16:59
ACWing
--每日一题-->填充(1.2)
(python)4966.填充-
AcWing
题库#输入s=list(input())res=0#保存结果#贪心i=1while(i<len(s)):#print(i)#保存俩值a=s[i]b=s[
芝士小熊饼干
·
2024-01-04 09:41
ACWing
python
算法
贪心算法
5407.管道 (二分+区间合并)
本题链接:5407.管道-
AcWing
题库题目:样例:输入3101165102输出5思路:根据题目意思,给出n个阀门,其中管道有len段,随后n个阀门对应的位置在L点,并且当S时刻阀门的水会放开,其中放开后水在
Angindem
·
2024-01-04 06:44
算法错题本
算法笔记
算法
AcWing
167. 木棒(DFS + 剪枝优化)
AcWing
167.木棒(DFS+剪枝优化)一、问题二、分析1、整体分析2、剪枝优化(1)优化搜索顺序(2)排除等效冗余(3)可行性剪枝(4)最优性剪枝(5)其他优化三、代码一、问题二、分析1、整体分析这道题的数据范围非常小
Turing_Sheep
·
2024-01-03 22:59
#
搜索与图论题目
深度优先
剪枝
算法
AcWing
167. 木棒 (剪枝非常多的一道搜索题
package
算法提高
课;importjava.util.Arrays;importjava.util.Scanner;publicclassacw167{staticint[]w;staticboolean
李菜菜想获奖
·
2024-01-03 22:29
剪枝
算法
数据结构
AcWing
:167. 木棒(dfs + 剪枝)
乔治拿来一组等长的木棒,将它们随机地砍断,使得每一节木棍的长度都不超过50个长度单位。然后他又想把这些木棍恢复到为裁截前的状态,但忘记了初始时有多少木棒以及木棒的初始长度。请你设计一个程序,帮助乔治计算木棒的可能最小长度。每一节木棍的长度都用大于零的整数表示。注意:数据中可能包含长度大于50的木棒,请在处理时忽略这些木棒。输入格式输入包含多组数据,每组数据包括两行。第一行是一个不超过64的整数,表
weixin_30782331
·
2024-01-03 22:28
数据结构与算法
AcWing
167. 木棒 【DFS、经典剪枝与优化】
乔治拿来一组等长的木棒,将它们随机地砍断,使得每一节木棍的长度都不超过50个长度单位。然后他又想把这些木棍恢复到为裁截前的状态,但忘记了初始时有多少木棒以及木棒的初始长度。请你设计一个程序,帮助乔治计算木棒的可能最小长度。每一节木棍的长度都用大于零的整数表示。输入格式输入包含多组数据,每组数据包括两行。第一行是一个不超过64的整数,表示砍断之后共有多少节木棍。第二行是截断以后,所得到的各节木棍的长
耐、
·
2024-01-03 22:58
算法
剪枝
上一页
6
7
8
9
10
11
12
13
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他