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
] 883. 高斯消元解线性方程组 高斯消元
前言传送门:原题推荐明路:思路我们将原有方程换成增广矩阵然后使用行变换对方程进行修改(这里代码枚举每行然后对每行的每列进行操作)最后如果如果左边的系数为0的话,那么说明存在无穷解否则因为行数少于方程数那么就不存在解啊,总之原理都懂,毕竟学过线性代数,但是操起来就不懂了Mycodetypedefpriority_queue,greater>Pri_m;typedefpairpii;typedefve
*DDL_GzmBlog
·
2023-10-08 02:13
#
基础数论
数论
线性代数
矩阵
c++
AcWing
883. 高斯消元解线性方程组 (高斯消元)
题目链接:点击查看题目描述:输入一个包含n个方程n个未知数的线性方程组。方程组中的系数为实数。求解这个方程组。下图为一个包含m个方程n个未知数的线性方程组示例:输入输出格式:输入第一行包含整数n。接下来n行,每行包含n+1个实数,表示一个方程的n个系数以及等号右侧的常数。输出如果给定线性方程组存在唯一解,则输出共n行,其中第i行输出第i个未知数的解,结果保留两位小数。如果给定线性方程组存在无数解,
在森林中麋了鹿
·
2023-10-08 02:42
早年算法竞赛学过的知识点
高斯消元
AcWing
884. 高斯消元解异或线性方程组(高斯消元变种)
输入一个包含n个方程n个未知数的异或线性方程组。方程组中的系数和常数为0或1,每个未知数的取值也为0或1。求解这个方程组。异或线性方程组示例如下:M[1][1]x[1]^M[1][2]x[2]^…^M[1][n]x[n]=B[1]M[2][1]x[1]^M[2][2]x[2]^…^M[2][n]x[n]=B[2]…M[n][1]x[1]^M[n][2]x[2]^…^M[n][n]x[n]=B[n]
Brightess
·
2023-10-08 02:12
数学知识
线性代数
数学
高斯消元
AcWing
884. 高斯消元解异或线性方程组
高斯消元
AcWing
884.高斯消元解异或线性方程组原题链接
AcWing
884.高斯消元解异或线性方程组算法标签线性空间高斯消元异或思路代码#include#defineintlonglong#defineabsfabs
飞滕人生TYF
·
2023-10-08 02:12
算法
c++
算法
开发语言
883. 高斯消元解线性方程组
883.高斯消元解线性方程组-
AcWing
题库输入一个包含n个方程n个未知数的线性方程组。方程组中的系数为实数。求解这个方程组。
Landing_on_Mars
·
2023-10-08 02:11
数论
数学
算法
acwing
算法基础之
基础算法
--高精度除法算法
目录1知识点2模板1知识点大数除以小数,返回商和余数。2模板//A是大数,低位在前//b是小数//C是商,低位在前//r是余数vectordiv(vector&A,intb,int&r){vectorC;for(inti=A.size()-1;i>=0;--i){r=r*10+A[i];C.emplace_back(r/b);r%=b;}reverse(C.begin(),C.end());whi
YMWM_
·
2023-10-08 01:22
Acwing
算法
acwing
算法基础之
基础算法
--高精度减法算法
目录1知识点2模板1知识点此高精度减法模板,保证A大于等于B。此高精度模板假定数A和数B都是正数。2模板//低位在前//A大于Bvectorsub(vector&A,vector&B){vectorC;intt=0;for(inti=0;i1&&C.back()==0){//去除高位的0C.pop_back();}returnC;}
YMWM_
·
2023-10-08 01:52
Acwing
算法
acwing
算法基础之
基础算法
--高精度乘法算法
目录1知识点2模板1知识点大数乘以小数大数的每一位与小数相乘2模板//A是大数,b是小数//最后去除高位上的0vectormul(vector&A,intb){vectorC;intt=0;for(inti=0;i1&&C.back()==0){C.pop_back();}returnC;}
YMWM_
·
2023-10-08 01:52
Acwing
算法
acwing
算法基础之
基础算法
--前缀和算法
目录1知识点2模板1知识点前缀后下标尽量从1开始,当然不从1开始也是ok的。a1,a2,a3,...,ana_1,a_2,a_3,...,a_na1,a2,a3,...,anS1,S2,S3,...SnS_1,S_2,S_3,...S_nS1,S2,S3,...SnSiS_iSi:原数组nums中前iii个元素的和,注意边界情况S0=0S_0=0S0=0。前缀和的作用,O(1)O(1)O(1)时间
YMWM_
·
2023-10-08 01:49
Acwing
算法
数据结构
第九课 排序
文章目录第九课排序排序算法lc912.排序数组--中等题目描述代码展示lc1122.数组的相对排序--简单题目描述代码展示lc56.合并区间--中等题目描述代码展示lc215.数组中的第k个最大元素--中等题目描述代码展示
acwing
104
BH04250909
·
2023-10-07 21:03
C++刷题
算法
数据结构
leetcode
202. 最幸运的数字
202.最幸运的数字-
AcWing
题库#include#defineIOSios::sync_with_stdio(0);cin.tie(0);cout.tie(0);#defineendl'\n'usingnamespacestd
泠楠子
·
2023-10-07 21:41
数论
c++
算法
数论
二分查找 红蓝染色法 【
基础算法
精讲 04】
视频链接:二分查找红蓝染色法_哔哩哔哩_bilibili在排序数组中查找元素的第一个和最后一个位置链接:在排序数组中查找元素的第一个和最后一个位置思想:暴力:在lc上,直接暴力枚举左端点和右端点也是能够通过的!二分:题目要求在O(logn)的时间复杂度处理该问题,那么就要用到二分的思想了!设l,r为要找的区间的左右端点代码:1.暴力(c++)classSolution{public:vectors
ros275229
·
2023-10-07 16:47
leetcode刷题
灵神算法精讲
算法学习
数据结构
acwing
2041. 干草堆(差分数组)
题目描述:原题链接视频讲解差分算法(前缀和的逆运算)差法算法(差分与前缀和的下标都从1开始,避免出现越界)算法思路:给l,r区间内加上x,则表示为在l的位置+x,在r+1的位置上-x,就可抵消掉+x在r+1开始后的贡献,再利用前缀和就能一次求出答案#include#include
943802606
·
2023-10-07 08:36
算法
算法基础课第一部分
算法基础课第一讲
基础算法
快速排序归并排序二分整数二分模板
AcWing
789.数的范围(整数二分法)
AcWing
1236.递增三元组
AcWing
730.机器人跳跃问题
AcWing
1227.分巧克力
AcWing
1221
943802606
·
2023-10-07 08:33
算法
数据结构
AcWing
299. 裁剪序列
题目链接:裁剪序列知识点:动态规划,单调队列,multiset,贪心,双指针分析首先使用闫氏DP分析法,状态表示:集合:f[i]表示所有前i个数的合法划分方案的集合。属性:最小值。状态计算:根据最后一段的长度来分类。可以为分为1,2,...,k,...,i类,其中第k类为f[i-k]+a_max,a_max为a[k,i]区间的最大值。如果区间[j,k]的最大值为a_max,那么该段的最小值为f[j
Spring.A
·
2023-10-07 07:18
动态规划
算法
c++
Acwing
AcWing
524. 愤怒的小鸟
参考题目
AcWing
524.愤怒的小鸟题目描述Kiana最近沉迷于一款神奇的游戏无法自拔。简单来说,这款游戏是在一个平面上进行的。
Spring.A
·
2023-10-07 07:47
动态规划
算法
动态规划
Acwing
323. 战略游戏
参考题目:
Acwing
323.战略游戏题意给定一个树,要使每条边上至少选一个点,求最少需要选几个点。
Spring.A
·
2023-10-07 07:47
动态规划
搜索
算法
AcWing
867. 分解质因数
AcWing
867.分解质因数算数基本定理:任何一个大于1的整数n都可以分解成若干个质因数的连乘积,如果不计各个质因数的顺序,那么这种分解是唯一的。
Spring.A
·
2023-10-07 07:16
数论
算法
Acwing
第三章模板及详解(搜索与图论)
一、DFS与BFS二、树与图的遍历:拓扑排序三、最短路四、最小生成树五、二分图:染色法、匈牙利算法一、DFS与BFS概述DFS:深度优先搜索(Depth-First-Search)BFS:宽度优先搜索(Breadth-First-Search)DFS和BFS的对比DFS使用栈(stack)来实现,BFS使用队列(queue)来实现DFS所需要的空间是树的高度h,而BFS需要的空间是2h(DFS的空
小吉在努力
·
2023-10-07 06:39
c++
深度优先
图论
Acwing
| 搜索与图论:DFS
题目1排列数字题目内容给定一个整数n,将数字1∼n排成一排,将会有很多种排列方法。现在,请你按照字典序将所有的排列方法输出。输入格式共一行,包含一个整数n。输出格式按字典序输出所有排列方案,每个方案占一行。数据范围1≤n≤7输入样例3输出样例123132213231312321思路最重要的就是其中递归的过程path[i]表示当前位i所要填的数字sta[i]表示数字i是否已经使用过代码:#inclu
小匈许
·
2023-10-07 06:07
图论
算法
基础算法
总结
快速排序图解分析:模板://核心思想:分而治之//函数参数:(需要处理的数组,数组的左边界,数组的右边界)//函数:使得左边小于x,右边大于xvoidquick_sort(intq[],intl,intr){//递归出口if(l>=r)return;//运用双指针,左指针指向的数小于x,右指针指向的数大于xintx=(q[l]+q[r])/2;inti=l-1,j=r+1;while(ix);if
人生导师yxc
·
2023-10-07 06:36
算法
算法
c++
有向图与无向图(邻接表)
acwing
846.树的重心(无向图)邻接表(左边为样例):模拟过程:邻接表代码实现:voidadd(inta,intb)//在以h[a]为头结点的位置后面插入一个节点b(PS:h[a]存放的是下一个节点的地址
人生导师yxc
·
2023-10-07 06:04
算法
搜索与图论
题目记录
深度优先
算法
图论
AcWing
289. 环路运输,《算法竞赛进阶指南》,单调队列优化dp,滑动窗口求最大值,环形与后效性处理
289.环路运输-
AcWing
题库在一条环形公路旁均匀地分布着N座仓库,编号为1∼N,编号为i的仓库与编号为j的仓库之间的距离定义为dist(i,j)=min(|i−j|,N−|i−j|),也就是逆时针或顺时针从
Landing_on_Mars
·
2023-10-07 04:17
#
区间dp
环形结构上的动态规划
思维
算法
acwing
算法基础之
基础算法
--浮点数二分算法
目录1知识点模板代码1知识点只要保证答案在区间里。当左右边界距离足够小,比如1e-6,就可以认为找到了答案。不需要处理边界问题。模板代码//以求三次方根为例,给出浮点数二分算法的模板while(r-l>=1e-8){doublemid=(l+r)/2.0;if(mid*mid*mid>=x){r=mid;}else{l=mid;}}
YMWM_
·
2023-10-07 00:12
Acwing
算法
acwing
算法基础之
基础算法
--高精度加法算法
目录1知识点2模板1知识点大整数+大整数,它们的长度都为10610^6106。大整数是指长度为10610^6106的整数。大整数-大整数大整数*小整数大整数/小整数把大整数存储到向量中,需要考虑高位在前还是低位在前,低位在前会更好一些。2模板//A=[1,2,3,4]表示数4321//B和C也是如此vectoradd(vector&A,vector&B){vectorC;intt=0;for(in
YMWM_
·
2023-10-07 00:11
Acwing
算法
ACwing
:算法基础课 第二章单链表,双链表,队列,栈以及KMP听课笔记
前言本次课程的前半部分讲链表和栈队列的时候都有多种的实现方式,比如可以通过用指针和结构体的方式去实现链表,也可以通过STL库直接实现栈和队列。但是本次课程主要就是讲用数组进行模拟,原因如下:效率问题。通过数组模拟的效率比较高,如果利用结构体和指针实现链表的话,每次存进去的时候都要new一个结点,但是这个效率非常慢。一般都是有十万级别的,所以用动态链表去实现的时候,太耗时间了,全部都花在新建结点上面
Warddamn
·
2023-10-06 13:04
ACwing听课笔记
链表
算法
数据结构
1024程序员节
第一课数组、链表、栈、队列
第一课数组、链表、栈、队列
acwing
136邻值查找---中等题目描述代码展示lc20.有效的括号--简单题目描述代码展示lc25.K个一组翻转链表--困难题目描述代码展示lc26.删除有序数组中的重复项
BH04250909
·
2023-10-06 13:03
C++刷题
链表
数据结构
AcWing
蓝桥杯C++ AB组辅导课 第一讲递归与递推
蓝桥杯C++AB组辅导课例题92.递归实现指数型枚举AC代码:#include#include#include#includeusingnamespacestd;constintN=16;intst[N];intn;voiddfs(intu){if(u==n){for(inti=0;i>n;dfs(0);return0;}94.递归实现排列型枚举AC代码:#include#include#incl
陵游gentian
·
2023-10-06 13:17
yxc
yyds
蓝桥杯
c++
深度优先
递归算法
[
AcWing
]844. 走迷宫(C++实现)bfs的思想
[
AcWing
]844.走迷宫(C++实现)模板题1.题目2.读题(需要重点注意的东西)3.解法4.可能有帮助的前置习题5.所用到的数据结构与算法思想6.总结1.题目2.读题(需要重点注意的东西)思路:
Cloudeeeee
·
2023-10-06 13:33
AcWing算法日记
c++
散列表
开发语言
AcWing
844. 走迷宫
题目链接:活动-
AcWing
分析:bfs模板题,从每一个点向外拓展,第一个找到的点就是最短的点。需要用到队列先进先出的特点。
Spring.A
·
2023-10-06 13:33
搜索
算法
AcWing
844 走迷宫 BFS模板题
题目描述输入格式输出格式数据范围输入样例550100001010000000111000010输出样例8#include#includeusingnamespacestd;constintN=110;structnode{intx,y;};//结构体存坐标intn1,m1;intm[N][N];//map地图intd[N][N];//到起点的距离voidbfs(inta,intb){queueq;
Magic_Zq
·
2023-10-06 13:02
算法
bfs
acm竞赛
c++
搜索与图论:走迷宫—BFS
BFS有一个很经典的题目就是迷宫问题题目:
AcWing
844.走迷宫给定一个n×m的二维整数数组,用来表示一个迷宫,数组中只包含0或1,其中0表示可以走的路,1表
奋斗吧!骚年!
·
2023-10-06 13:32
#
搜索与图论
c++
模板题
算法
BFS
acwing
算法基础课 844. 走迷宫
acwing
844.走迷宫(bfs模板题)传送门题目大意:给你一个n*m的矩阵问你从左上角走到右下角最小需要几步,输出步数,其中矩阵里面只包含0和1两个数字,0表示可以走,1表示有障碍思路:求最短路,且边权都是一样的
BlueSkyπ_π
·
2023-10-06 13:32
笔记
算法
矩阵
数据结构
【
AcWing
——宽度优先搜索】
AcWing
844. 走迷宫
代码:/***BFS模板套路*1.将初始状态加入队列queue*2.whilequeue不空*3.{*3.1t#include#include#include#includeusingnamespacestd;typedefpairPII;constintN=110;intm,n;intg[N][N],d[N][N];intdx[4]={-1,1,0,0};intdy[4]={0,0,-1,1};
炫橘子上火
·
2023-10-06 13:32
刷题之路
Acwing
844. 走迷宫(BFS模板题)
给定一个n×m的二维整数数组,用来表示一个迷宫,数组中只包含0或1,其中0表示可以走的路,1表示不可通过的墙壁。最初,有一个人位于左上角(1,1)处,已知该人每次可以向上、下、左、右任意一个方向移动一个位置。请问,该人从左上角移动至右下角(n,m)处,至少需要移动多少次。数据保证(1,1)处和(n,m)处的数字为0,且一定至少存在一条通路。输入格式第一行包含两个整数n和m。接下来n行,每行包含m个
Aurora0725
·
2023-10-06 13:02
宽度优先
c++
算法
AcWing
844. 走迷宫(bfs)
题目链接:点击查看题目描述:给定一个n×m的二维整数数组,用来表示一个迷宫,数组中只包含0或1,其中0表示可以走的路,1表示不可通过的墙壁。最初,有一个人位于左上角(1,1)处,已知该人每次可以向上、下、左、右任意一个方向移动一个位置。请问,该人从左上角移动至右下角(n,m)处,至少需要移动多少次。数据保证(1,1)处和(n,m)处的数字为0,且一定至少存在一条通路。输入输出格式:输入第一行包含两
在森林中麋了鹿
·
2023-10-06 13:01
早年算法竞赛学过的知识点
队列
bfs
bfs模板 走迷宫
acwing
#include#include#includeusingnamespacestd;typedefpairPII;constintN=110;intn,m;intg[N][N],d[N][N];PIIq[N*N];intbfs(){//initqueueq[0]={0,0};inthh=0,tt=0;//initdistancememset(d,-1,sizeofd);d[0][0]=0;//定义
Forskolin
·
2023-10-06 13:31
宽度优先
算法
c++
AcWing
算法基础课 第二讲数据结构小结(持续更新中)
目录一、链表介绍单链表介绍初始化操作链表头插入操作删除操作任意位置插入操作应用双链表介绍初始化操作插入操作删除操作应用二、栈栈含义插入操作删除操作应用单调栈含义应用三、队列队列含义应用单调队列含义应用四、KMP算法提出问题含义实现逻辑next数组匹配过程应用五、Trie含义常用操作插入操作查询操作应用1:Trie字符串统计应用2:最大异或对思路题解六、并查集含义基本原理疑惑优化:路径压缩应用1:合
StarHui0001
·
2023-10-06 09:05
AcWing基础算法
算法
c++
Free Code Camp 十六道JS基本算法题
记录一下,FCC通关过程中,
基础算法
,总共十五题。算是对些API的熟悉和对JS脚本结构一些熟悉。
江湖竖子
·
2023-10-06 08:30
蓝桥杯每日一题2023.10.5
3420.括号序列-
AcWing
题库题目描述题目分析对于这一我们需要有前缀知识完全背包完全背包的朴素写法:#includeusingnamespacestd;constintN=1010;intn,m,
Akct
·
2023-10-05 21:08
算法
Acwing
-Hankson的趣味题-(dfs求因子+质数,因子,数字大小的各种关系的整理)
思考:很久以前刷
acwing
的时候,没把这题当回事,就随便看了看就过了。这次CCPC网络赛就考了,而我却还不知道dfs求因子是什么东西,顺便整理一下所有质数因子数字大小之间的关系。先
可爱美少女
·
2023-10-05 20:17
数论
算法
AcWing
288. 休息时间,《算法竞赛进阶指南》
288.休息时间-
AcWing
题库在某个星球上,一天由N个小时构成,我们称0点到1点为第1个小时、1点到2点为第2个小时,以此类推。在第i个小时睡觉能够恢复Ui点体力。
Landing_on_Mars
·
2023-10-05 18:36
#
区间dp
环形结构上的动态规划
算法
动态规划
AcWing
287. 积蓄程度,《算法竞赛进阶指南》
287.积蓄程度-
AcWing
题库有一个树形的水系,由N−1条河道和N个交叉点组成。我们可以把交叉点看作树中的节点,编号为1∼N,河道则看作树中的无向边。
Landing_on_Mars
·
2023-10-05 18:34
#
树形dp
算法
数据结构
动态规划
树形dp
【算法基础】
基础算法
(二)--(高精度、前缀和与差分)
一、高精度当一个数很大,大到int无法存下时,我们可以考虑用数组来进行存储,即数组中一个位置存放一位数。但是对于数组而言,一个数顺序存入数组后,对其相加减是很简单的。但是当需要进位时,还是很麻烦的,因为要将整个数组全都往后移动一位,将最高位的进位位置空出来,这个操作的时间复杂度是O(n)。不过,我们有一种方法可以很好的解决进位这个问题,就是将这个数的个位数存至数组中的第一位(即a[0]),最高位存
炫酷的伊莉娜
·
2023-10-05 17:40
C++
学习
算法
c++
学习
算法
基础算法
---前缀和
前缀和用途:前缀和是一种预处理,可以用于快速计算某个区间的总和。一维前缀和说明:假设有一维数组a和前缀和数组preSum,那么它们之间的关系如下:代码框架://预处理之后,求[l,r]的区间和为preSum[r]-preSum[l-1];for(inti=0;i
实名吃香菜
·
2023-10-05 12:18
算法学习
算法
开发语言
基础算法
---差分
差分用途:用于快速修改数组中某一段区间的值。思想:差分是前缀和的逆运算,对于一个数组a,其差分数组b的每一项都是a[i]和前一项a[i−1]的差。注意:差分数组和原数组必须分开存放!!!!一维差分说明:一维差分是指给定一个长度为n的序列a,要求支持操作pro(l,r,c)表示对a[l]~a[r]区间上的每一个值都加上或减去常数c,并求修改后的序列a。作用:让一个序列中某个区间内的所有值均加上或减去
实名吃香菜
·
2023-10-05 12:17
算法学习
算法
【
基础算法
训练】—— 01背包 + 排序
目录前言第一题977.有序数组的平方题目描述解题报告参考代码(C++版本)第二题268.丢失的数字题目描述解题报告参考代码(C++版本)解法一:老老实实模拟解法二:异或运算第三题1877.数组中最大数对和的最小值题目描述解题报告参考代码(C++版本)第四题950.按递增顺序显示卡牌题目描述解题报告参考代码(C++版本)第五题P1060[NOIP2006普及组]开心的金明题目描述解题报告参考代码(C
杨枝
·
2023-10-05 11:58
每日习题浅记录
在lc被欺负的这些年
算法
leetcode
数据结构
排序算法
01背包
#
AcWing
--合并两个排序的链表
题目36.合并两个排序的链表-
AcWing
题库https://www.
acwing
.com/problem/content/description/34/输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然是按照递增排序的
hz2.0
·
2023-10-05 05:09
链表
算法
数据结构
#
AcWing
-从尾到头打印链表
题目:输入一个链表的头结点,按照从尾到头的顺序返回节点的值。返回的结果用数组存储。数据范围0≤0≤链表长度≤1000≤1000。样例输入:[2,3,5]返回:[5,3,2]分析:1.错误示范:/***Definitionforsingly-linkedlist.*structListNode{*intval;*ListNode*next;*ListNode(intx):val(x),next(NU
hz2.0
·
2023-10-05 05:09
链表
算法
数据结构
c++
#
AcWing
35.反转链表
题目定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。思考题:请同时实现迭代版本和递归版本。数据范围链表长度[0,30]。样例输入:1->2->3->4->5->NULL输出:5->4->3->2->1->NULL算法一:迭代引用3个指针,踩砖迭代到cur为空。/***Definitionforsingly-linkedlist.*structListNode{*intval
hz2.0
·
2023-10-05 05:09
链表
数据结构
上一页
27
28
29
30
31
32
33
34
下一页
按字母分类:
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
其他