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周赛
LeetCode---382
周赛
---位运算
题目列表3019.按键变更的次数3020.子集中元素的最大数量3021.Alice和Bob玩鲜花游戏3022.给定操作次数内使剩余元素的或值最小一、按键变更的次数题目简单明了,就是看相邻的两个字母是否相等,不区分大小写,直接遍历统计即可,这里讲一个位运算的小技巧代码如下classSolution{public:intcountKeyChanges(strings){intans=0;for(int
竹下为生
·
2024-02-11 06:14
leetcode
算法
职场和发展
LeetCode---383
周赛
题目列表3028.边界上的蚂蚁3029.将单词恢复初始状态所需的最短时间I3030.找出网格的区域平均强度3031.将单词恢复初始状态所需的最短时间II一、边界上的蚂蚁这题没什么好说的,模拟就行,本质就是看前缀和有几个为0。代码如下classSolution{public:intreturnToBoundaryCount(vector&nums){intans=0,sum=0;for(autox:
竹下为生
·
2024-02-11 05:44
leetcode
算法
职场和发展
Acwing
算法基础1——快排 归并 二分 前缀和 差分 双指针 位运算 离散化 区间和
文章目录1、快排----分治2、归并——分治3、二分法4、高精度(C++)5、前缀和(一维、二维)6、差分(一维、二维)7、双指针算法8、位运算9、离散化10、区间和流程:1.理解思想,背模板2.刷题目3.重复3~5遍2021.9.111、快排----分治主要思想:1.确定分界点:q[l]q[(l+r)/2]q[r]随机2.调整范围:x放右边3.递归:处理左右两端难点:划分快排不稳定,如何变得稳定
倩mys
·
2024-02-11 05:31
数据结构与算法
算法
数据结构
java
常用代码模板1——基础算法——排序 二分 高精度 前缀和与差分 双指针算法 位运算 离散化 区间合并
排序二分高精度前缀和与差分双指针算法位运算离散化区间合并快速排序算法模板——模板题
AcWing
785.快速排序voidquick_sort(intq[],intl,intr){if(l>=r)return
結城
·
2024-02-11 05:31
c++
AcWing
785. 快速排序(java)【快速排序】
谢谢y老师模版和大佬们题解❤️年轻y总好帅爱了爱了❤️有输入输出版java:importjava.util.*;publicclassMain{privatestaticintN=100010;privatestaticint[]q=newint[N];publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);i
姐姐的半熟芝士
·
2024-02-11 04:06
和y总约会❤️
acwing
java
AcWing
785. 快速排序
快排:分治思想(先分完再递归)步骤:1.确定分界点:一般q[l]、q[(l+r)/2]、q[r](l,r为排序的闭区间)2.调整区间:使左边部分=x(注意:x不一定在分界点)------难点3.递归处理左右两端如何做到第二步?方案一:暴力法,开辟额外空间1.开两个数组a[],b[]2.遍历q[l]~q[r],小于等于x放a[],大于x放b[]3.将a[]放入q[],将b[]放入q[]方案二:优美1
ZZZZZrt
·
2024-02-11 04:36
AcWing数据结构与算法
算法
c++
数据结构
【
ACWing
】785. 快速排序
题目地址:https://www.
acwing
.com/problem/content/description/787/给定一个长nnn的数列,将其从小到大排序。
记录算法题解
·
2024-02-11 04:35
AC
数组
字符串
链表与模拟
算法
快速排序
c++
排序算法
AcWing
785. 快速排序
AcWing
785.快速排序题目链接:
AcWing
785.快速排序题目描述给定你一个长度为n的整数数列。请你使用快速排序对这个数列按照从小到大进行排序。并将排好序的数列按顺序输出。
MJHorseman
·
2024-02-11 04:35
算法
c++
排序
快速排序
Acwing
---837. 连通块中点的数量
连通块中点的数量1.题目2.基本思想3.代码实现1.题目给定一个包含nnn个点(编号为1∼n1∼n1∼n)的无向图,初始时图中没有边。现在要进行mmm个操作,操作共有三种:Cab,在点a和点b之间连一条边,a和b可能相等;Q1ab,询问点a和点b是否在同一个连通块中,a和b可能相等;Q2a,询问点a所在连通块中点的数量;输入格式第一行输入整数nnn和mmm。接下来mmm行,每行包含一个操作指令,指
amant 柒少
·
2024-02-11 00:44
#
Acwing
刷题
算法
java
数据结构
Acwing
---836. 合并集合
合并集合1.题目2.基本思想3.代码实现1.题目一共有nnn个数,编号是1∼n1∼n1∼n,最开始每个数各自在一个集合中。现在要进行mmm个操作,操作共有两种:Mab,将编号为aaa和bbb的两个数所在的集合合并,如果两个数已经在同一个集合中,则忽略这个操作;Qab,询问编号为aaa和bbb的两个数是否在同一个集合中;输入格式第一行输入整数n和m。接下来m行,每行包含一个操作指令,指令为Mab或Q
amant 柒少
·
2024-02-11 00:13
#
Acwing
刷题
java
算法
开发语言
力扣 292 场
周赛
292场
周赛
第一题classSolution{public:stringlargestGoodInteger(stringnum){stringret="";for(inti=0;iret){ret=t
ViTe思考者
·
2024-02-10 22:43
Leetcode 第 112 场双
周赛
题解
Leetcode第112场双
周赛
题解Leetcode第112场双
周赛
题解题目1:2839.判断通过操作能否让字符串相等I思路代码复杂度分析题目2:2840.判断通过操作能否让字符串相等II思路代码复杂度分析题目
UestcXiye
·
2024-02-10 20:49
Every
day
a
LeetCode
leetcode
数据结构与算法
C++
哈希
数学
滑动窗口
算法------(11)并查集
例题:(1)
Acwing
836.合并集合并查集就是把每一个集合看成一棵树,记录每个节点的父节点。合并集合就是把一棵树变成另一棵树的子树,即把一棵树的父节点变为另一棵树的父节点的儿子。
FancySuMMer11
·
2024-02-10 12:09
算法基础课
算法
c++
二、数据结构
链表单链表https://www.
acwing
.com/problem/content/828/#includeusingnamespacestd;constintN=1e5+10;//head:头节点的指向
duanyq666
·
2024-02-10 09:44
算法基础课
数据结构
算法
Acwing
---835. Trie字符串统计
Trie字符串统计1.题目2.基本思想3.代码实现1.题目维护一个字符串集合,支持两种操作:Ix向集合中插入一个字符串x;Qx询问一个字符串在集合中出现了多少次。共有N个操作,所有输入的字符串总长度不超过10510^5105,字符串仅包含小写英文字母。输入格式第一行包含整数N,表示操作数。接下来N行,每行包含一个操作指令,指令为Ix或Qx中的一种。输出格式对于每个询问指令Qx,都要输出一个整数作为
amant 柒少
·
2024-02-10 05:15
#
Acwing
刷题
java
算法
数据结构
Acwing
---143. 最大异或对
最大异或对1.题目2.基本思想3.代码实现1.题目在给定的N个整数A1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少?输入格式第一行输入一个整数N。第二行输入N个整数A1~AN。输出格式输出一个整数表示答案。数据范围1≤N≤105,1≤N≤10^5,1≤N≤105,000≤AiAiAi>i&1其实就是我想知道x的二进制表示中的第i位(二进制位从第0位开始表示第0位-第31位)
amant 柒少
·
2024-02-10 05:15
算法
java
数据结构
Acwing
---154. 滑动窗口
滑动窗口1.题目2.基本思想3.代码实现1.题目给定一个大小为n≤106n≤10^6n≤106的数组。有一个大小为k的滑动窗口,它从数组的最左边移动到最右边。你只能在窗口中看到k个数字。每次滑动窗口向右移动一个位置。以下是一个例子:该数组为[13-1-35367],kkk为333。你的任务是确定滑动窗口位于每个位置时,窗口中的最大值和最小值。输入格式输入包含两行。第一行包含两个整数nnn和kkk,
amant 柒少
·
2024-02-10 05:14
#
Acwing
刷题
算法
java
数据结构
Acwing
---797.差分
差分1.题目2.基本思想3.代码实现1.题目输入一个长度为nnn的整数序列。接下来输入mmm个操作,每个操作包含三个整数l,r,cl,r,cl,r,c,表示将序列中[l,r][l,r][l,r]之间的每个数加上ccc。请你输出进行完所有操作后的序列。输入格式第一行包含两个整数nnn和mmm。第二行包含nnn个整数,表示整数序列。接下来mmm行,每行包含三个整数l,r,cl,r,cl,r,c,表示一
amant 柒少
·
2024-02-10 05:44
#
Acwing
刷题
算法
java
数据结构
Acwing
---829. 模拟队列
模拟队列1.题目2.基本思想3.代码实现1.题目实现一个队列,队列初始为空,支持四种操作:pushx–向队尾插入一个数x;pop–从队头弹出一个数;empty–判断队列是否为空;query–查询队头元素。现在要对队列进行MMM个操作,其中的每个操作333和操作444都要输出相应的结果。输入格式第一行包含整数MMM,表示操作次数。接下来MMM行,每行包含一个操作命令,操作命令为pushx,pop,e
amant 柒少
·
2024-02-10 05:44
#
Acwing
刷题
java
数据结构
算法
Acwing
--845. 八数码(BFS)
在一个3×3的网格中,1∼8这8个数字和一个x恰好不重不漏地分布在这3×3的网格中。例如:123x46758在游戏过程中,可以把x与其上、下、左、右四个方向之一的数字交换(如果存在)。我们的目的是通过交换,使得网格变为如下排列(称为正确排列):12345678x例如,示例中图形就可以通过让x先后与右、下、右三个方向的数字交换成功得到正确排列。交换过程如下:123123123123x464x6456
wowon~
·
2024-02-10 01:28
搜索技术
算法
c++
BFS
【第188周
周赛
】异或三元数组,收集苹果,切披萨的方案数
2020/05/10第188周
周赛
第二题确实想到了前缀和的思路,但是没有对问题更加进一步的剖析。题目要求a==b其实相当于要求了arr[i]^...
zcz5566719
·
2024-02-09 22:58
周赛总结
算法
数据结构
动态规划
leetcode
组内刷题之LeetCode第188
周赛
解题思路
组内刷题之LeetCode第188
周赛
解题思路1.用栈操作构建数组题目:给你一个目标数组target和一个整数n。每次迭代,需要从list={1,2,3...,n}中依序读取一个数字。
guangcheng0312q
·
2024-02-09 22:57
AcWing
1224 交换瓶子(简单图论)
[题目概述]有N个瓶子,编号1∼N,放在架子上。比如有5个瓶子:21354要求每次拿起2个瓶子,交换它们的位置。经过若干次后,使得瓶子的序号为:12345对于这么简单的情况,显然,至少需要交换2次就可以复位。如果瓶子更多呢?你可以通过编程来解决。输入格式第一行包含一个整数N,表示瓶子数量。第二行包含N个整数,表示瓶子目前的排列状况。输出格式输出一个正整数,表示至少交换多少次,才能完成排序。数据范围
techpupil
·
2024-02-09 22:05
图论
算法
数据结构
牛客
周赛
Round 31 F.小红的连续段【隔板法+组合数学】
原题链接:https://ac.nowcoder.com/acm/contest/74362/F时间限制:C/C++1秒,其他语言2秒空间限制:C/C++262144K,其他语言524288K64bitIOFormat:%lld题目描述小红定义一个字符串的“连续段”数量为:相同字符的极长连续子串的数量。例如,"aabbaaa"共有3个连续段:"aa"+"bb"+"aaa"。现在,小红希望你求出,长
lianxuhanshu_
·
2024-02-09 17:58
数学
算法
AcWing
5147. 数量 题解
题目描述:请你统计,1~n的范围内一共有多少个正整数满足其十进制表示不含4和7以外的数字。样例:输入数据:4输出数据:1思路讲解:暴力dfs即可,存一个当前遍历到的变量,如果大于n就return,否则继续搜索。对于下一步只有两种可能,一种是在末尾添加一个4,另一种则是在末尾添加一个7。C++代码:#includeusingnamespacestd;longlongn;inttot=0;voiddf
gu_zhou_suo_li_weng
·
2024-02-09 16:38
深度优先
DFS——C++
具体算法讲解可以参考https://blog.csdn.net/qq_63055790/article/details/133961017例题:https://www.
acwing
.com/activity
松定
·
2024-02-09 13:28
深度优先
c++
算法
C++算法之树状数组与线段树
AcWing
1264.动态求连续区间和详细题解
AcWing
,题解,动态求连续区间和,https://www.
acwing
.com/solution/content/7526/一、树状数组1.
AcWing
1264
算法下的星辰曲
·
2024-02-09 09:02
蓝桥杯
c++
开发语言
C++算法之数学与简单DP
1.
AcWing
2.01背包问题分析思路代码实现#includeusingnamespacestd;constintN=1010;intdp[N][N];intv[N],w[N];intn,m;intmain
算法下的星辰曲
·
2024-02-09 09:31
蓝桥杯
c++
开发语言
C++算法之枚举、模拟与排序
1.
AcWing
1210.连号区间数分析思路由题意是在1∼N的某个排列中有多少个连号区间,所以每个数出现并且不重复!
算法下的星辰曲
·
2024-02-09 09:31
蓝桥杯
算法
c++
C++算法之二分与前缀和(2)
1.
AcWing
795.前缀和分析思路由数列的前n项和可知,s[i]=a[i]+s[i-1],如果我们要计算[l,r]的和,可用公式s[r]-s[l-1]!
算法下的星辰曲
·
2024-02-09 09:01
蓝桥杯
c++
开发语言
AcWing
803. 区间合并
原题链接:
AcWing
803.区间合并https://www.
acwing
.com/problem/content/805/解题思路:①按左端点对区间进行排序。
算法下的星辰曲
·
2024-02-09 09:00
算法基础课
算法
c++
C++算法之递归与递推(2)
二、递推(与递归相反,先求出子问题再去算出原问题)1.
AcWing
717.简单斐波那契分析过程先定义f(1)和f(2)作为边界,然后f(n)=f(n-1)+f(n-2),此题可以直接用滚动数组的雏形来算
算法下的星辰曲
·
2024-02-09 09:30
蓝桥杯
算法
c++
数据结构
C++算法之双指针、BFS和图论
一、双指针1.
AcWing
1238.日志统计分析思路前一区间和后一区间有大部分是存在重复的我们要做的就是利用这部分来缩短我们查询的时间并且在使用双指针时要注意对所有的博客记录按时间从小到大先排好顺序因为在有序的区间内才能使用双指针记录两个区间相差相当于把一个有序的时间序列进行每次递增
算法下的星辰曲
·
2024-02-09 09:28
c++
宽度优先
图论
朴素dijkstra算法 :
AcWing
849. Dijkstra求最短路 I
Dijkstra算法分析:(适用于稠密图,边权非负图)Dijkstra算法的流程如下:Dijkstra算法基于贪心思想,它只适用于所有边的长度都是非负数的图。当边长z都是非负数时,全局最小值不可能再被其他节点更新,故在第1步中选出的节点x必然满足:dist[x]已经是起点到x的最短路径。我们不断选择全局最小值进行标记和扩展,最终可得到:起点1到每个节点的最短路径的长度。(求得起点到所有终点的最短路
Brightess
·
2024-02-09 05:58
图论
最短路问题
算法
图论
AcWing
1238 日志统计(双指针算法)
题目概述小明维护着一个程序员论坛。现在他收集了一份”点赞”日志,日志共有N行。其中每一行的格式是:tsid表示在ts时刻编号id的帖子收到一个”赞”。现在小明想统计有哪些帖子曾经是”热帖”。如果一个帖子曾在任意一个长度为D的时间段内收到不少于K个赞,小明就认为这个帖子曾是”热帖”。具体来说,如果存在某个时刻T满足该帖在[T,T+D)[T,T+D)[T,T+D)这段时间内(注意是左闭右开区间)收到不
techpupil
·
2024-02-09 04:04
双指针
算法
AcWing
1101 献给阿尔吉侬的花束(bfs宽搜)
[题目概述]阿尔吉侬是一只聪明又慵懒的小白鼠,它最擅长的就是走各种各样的迷宫。今天它要挑战一个非常大的迷宫,研究员们为了鼓励阿尔吉侬尽快到达终点,就在终点放了一块阿尔吉侬最喜欢的奶酪。现在研究员们想知道,如果阿尔吉侬足够聪明,它最少需要多少时间就能吃到奶酪。迷宫用一个R×CR×CR×C的字符矩阵来表示。字符S表示阿尔吉侬所在的位置,字符E表示奶酪所在的位置,字符#表示墙壁,字符.表示可以通行。阿尔
techpupil
·
2024-02-09 04:33
宽度优先
算法
牛客
周赛
Round 31 E小红的子集取反
原题链接:E-小红的子集取反_牛客
周赛
Round31(nowcoder.com)题目大意:小红拿到了一个数组,她准备选择若干元素乘以-1,使得最终所有元素的和为0。小红想知道最少需要选择多少个元素?
Jiu-yuan
·
2024-02-08 18:14
算法
数据结构
求职招聘
Leetcode 第 382 场
周赛
题解
Leetcode第382场
周赛
题解Leetcode第382场
周赛
题解题目1:3019.按键变更的次数思路代码复杂度分析题目2:3020.子集中元素的最大数量思路代码复杂度分析题目3:3021.Alice
UestcXiye
·
2024-02-08 12:20
Every
day
a
LeetCode
leetcode
C++
数据结构与算法
双指针
哈希
数学
位运算
容斥原理级笔记
容斥原理:|s1⋃s2⋃s3……⋃sn|=|s1|+|s2|+……|s3|-|s1⋂s2|-……+|s1⋂s2⋂s3|+……应用一(基础):
AcWing
能被整除的数思路:(1)容斥原理的直接应用。
奔跑的星黛露
·
2024-02-08 09:55
算法
算法
第二讲:数据结构
AcWing
826. 单链表
目录数组模拟链表数组模拟单链表单链表思路&&代码看图更好理解推荐一下y总的刷题网站数组模拟链表笔试的题目大部分大部分涉及到链表都是十万级别的用数组的方式创建链表速度很快,不会超时,而如果用new一个结构体的话大部分就是比较慢的所以不建议使用数组模拟单链表单链表在笔试题中用的最多是领接表领接表最多的应用是存储数和图双链表最多的应用就是来优化某些问题假设当前的节点我们可以用e[N]来表示当前节点的值是
橘子味的茶二
·
2024-02-08 09:23
acwing算法基础
数据结构
第二讲 数据结构
AcWing
827. 双链表
目录双链表代码&&思路双链表实现一个双链表,双链表初始为空,支持5种操作:在最左侧插入一个数;在最右侧插入一个数;将第k个插入的数删除;在第k个插入的数左侧插入一个数;在第k个插入的数右侧插入一个数现在要对该链表进行M次操作,进行完所有操作后,从左到右输出整个链表。注意:题目中第k个插入的数并不是指当前链表的第k个数。例如操作过程中一共插入了n个数,则按照插入的时间顺序,这n个数依次为:第1个插入
橘子味的茶二
·
2024-02-08 09:20
acwing算法基础
数据结构
算法
统计数字出现次数的数位动态规划解法-数位统计DP
原题链接:338.计数问题-
AcWing
题库数位动态规划概述数位DP是一种用于解决与数字的各个数位相关的问
派大星45599
·
2024-02-08 05:01
数据结构与算法分析
动态规划
算法
java
状态压缩DP--最短Hamilton路径问题的状态压缩动态规划解法
题目链接:91.最短Hamilton路径-
AcWing
题库问题描述算法概述状态压缩动态规划可以在处理特定类型的组合问题时非常有用,尤其是当问题涉及到需要考虑集合
派大星45599
·
2024-02-08 05:00
数据结构与算法分析
动态规划
算法
Acwing
778.字符串最大跨越
有三个字符串S,S1,S2,其中,S长度不超过300,S1和S2的长度不超过10。现在,我们想要检测S1和S2是否同时在S中出现,且S1位于S2的左边,并在S中互不交叉(即,S1的在S的左边界点的左侧)。计算满足上述条件的最大跨距(即,最大间隔距离:最右边的S2的起始点与最左边的S1的终止点之间的字符数目)。如果没有满足条件的S1,S2存在,则输出−1。例如,S=abcd123ab888efghi
Mbigmouse
·
2024-02-08 04:40
c++
算法
开发语言
Acwing
777.字符串的乘方
给定两个字符串a和b,我们定义a×b为他们的连接。例如,如果a=abc而b=def,则a×b=abcdef。如果我们将连接考虑成乘法,一个非负整数的乘方将用一种通常的方式定义:a0=``(空字符串),a(n+1)=a×(an)。输入格式输入包含不超过10组测试样例,每组测试样例占一行。每组样例包含一个由小写字母构成的字符串s,s的长度不超过100,且不包含空格。最后的测试样例后面将是一个点号作为一
Mbigmouse
·
2024-02-08 04:40
算法
c++
开发语言
ACWing
776.字符串移位包含问题
对于一个字符串来说,定义一次循环移位操作为:将字符串的第一个字符移动到末尾形成新的字符串。给定两符s和s2,要求判定其中一个字符串是否是另一字符串通过若干次循环移位后的新字符串的子串。例如CDAA是由AABCD两次移位后产生的新串BCDAA的子串,而ABCD与ACBD则不能通过多次移位来得到其中一个字符串是新串的子串。输入格式共一行,包含两个字符串,中间由单个空格隔开。字符串只包含字母和数字,长度
Mbigmouse
·
2024-02-08 04:09
算法
c++
开发语言
数论 之 约数篇
约数1)试除法求约数原题链接:869.试除法求约数-
AcWing
题库思路:与上面的试除法求质数很相似a|b的意思是,b%a=0如果x|n那么一定有(n/x)|n,所以,著需要求一个,另一个直接能得到核心代码
海风许愿
·
2024-02-08 04:21
Acm算法
算法
数据结构
c++
开发语言
树的重心(dfs深度搜索)
树的重心原题链接:846.树的重心-
AcWing
题库邻接表存储树图模板代码voidadd(inta,intb){e[id]=b,ne[id]=h[a],h[a]=id++;}dfs搜索树模板代码voiddfs
海风许愿
·
2024-02-08 04:51
Acm算法
数据结构
c++
深度优先
算法
图论
组合数 与卡特兰数
组合数与卡特兰数1a,b比较小时采用预处理方法,提前将所有的组合数都算出来,到时候直接查表采用的公式是C(a,b)=C(a-1,b)+C(a-1,b-1)原题链接:885.求组合数I-
AcWing
题库核心代码
海风许愿
·
2024-02-08 04:50
Acm算法
c++
算法
数据结构
c++
力扣 第 383 场
周赛
解题报告 | 珂学家 | Z函数/StringHash
前言谁言别后终无悔寒月清宵绮梦回深知身在情长在前尘不共彩云飞整体评价T3是道模拟题,但是感觉题意有些晦涩,T4一眼Z函数,当然StringHash更通用些。新年快乐,_.T1.将单词恢复初始状态所需的最短时间I思路:模拟就是前缀和为0的次数classSolution{publicintreturnToBoundaryCount(int[]nums){intacc=0;intres=0;for(in
珂朵莉MM
·
2024-02-08 01:38
力扣周赛
解题报告
leetcode
算法
职场和发展
力扣
java
python
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
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
其他