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算法提高
蓝桥杯
算法提高
矮人砍树(递归优化组合数)
题目:矮人们所生活的地区有N棵树。有趣的是,这N棵树排成了一条直线。现在,矮人们为了建造一个新的小屋,决定砍掉K棵树来获取木材。但是,矮人们希望对于任意两棵相邻的树,至少要保留一棵。矮人们想知道,他们有多少种不同的砍树方案。由于方案数可能很大,你只需要输出方案数除以10007的余数。思路:1.算法名称:递归。(由题目易得,插空问题答案为C(k,N-k+1),用递归优化组合数节省时间)2.参变量意义
提娜米苏
·
2023-10-08 21:56
蓝桥杯
【Trie树】
AcWing
143. 最大异或对
c++异或运算符^也称XOR运算符。规则:相同为0,相异为1,0∧0=0,0∧1=1,1∧0=1,1∧1=0暴力做法#includeusingnamespacestd;constintN=10e5+10,M=3000000;//M是节点个数30*10e5intn;intson[N][2],idx;inta[N];intmain(){cin>>n;for(inti=0;i>a[i];intres=0
栀子花0511
·
2023-10-08 21:36
刷题
算法
c++
AcWing
143.最大异或数 题解
题目描述解题思路暴力做法把输入的所有数,每两个两个进行异或,算出最大值时间复杂度:O(n2)巧妙解法将每个数看成31位的二进制串,将它存储在Trie树上遍历一遍输入的数,对每个数,去Trie树从根节点开始尽可能地找“不同地分支”一直找到树地叶结点为止,然后求出最大值即可对每个数地遍历时间复杂度为O(n),在树里面遍历时间复杂度为logn因此时间复杂度被降为O(nlogn)代码:#include#i
Alkali!
·
2023-10-08 21:05
code
刷题
总结&记录
算法
c++
Trie
AcWing
143. 最大异或对 (01Trie树 贪心)
题目描述原题链接分析推荐参考Y总视频讲解暴力做法O(n2):O(n^2):O(n2):依次选出A1,A2....AnA_1,A_2....A_nA1,A2....An,与其余的数进行异或&\&&运算,求出最大值优化暴力做法:是否存在一种方法,可以快速选出与A1A_1A1异或值最大的数???根据异或的性质,我们可以利用贪心的思想:从最高位开始,每次优先选出与A1A_1A1最高位不同的那些数,因为这样
从入门到入坑
·
2023-10-08 21:04
Trie树
贪心
AcWing
143 最大异或对(Trie树、异或)
题目:
AcWing
143最大异或对题解目录前言一、题目陈述二、解决思路1.暴力解决2.数字变为二进制存储统计的思考三、代码实现总结前言异或运算,相当于二进制数的不进位加法:两位相同结果为0,两位不同结果为
codertea
·
2023-10-08 20:34
算法
AcWing
143. 最大异或对 (Trie)
整理的算法模板:ACM算法模板总结(分类详细版)在给定的N个整数A1,A2……ANA1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少?输入格式第一行输入一个整数N。第二行输入N个整数A1A1~ANAN。输出格式输出一个整数表示答案。数据范围1≤N≤1051≤N≤105,0≤Aiusingnamespacestd;constintN=1e5+7,M=30*N;intson[M]
Aloof__
·
2023-10-08 20:34
基础算法——数据结构
Acwing
143. 最大异或对(Trie 树)
题目链接在给定的N个整数A1,A2……ANA1,A2……ANA1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少?输入格式第一行输入一个整数N。第二行输入N个整数A1~ANA1~ANA1~AN。输出格式输出一个整数表示答案。数据范围1≤N≤1050≤Ai#include#includeusingnamespacestd;constintN=1e5+10;intson[N*32]
smiling~
·
2023-10-08 20:03
Trie树
Acwing
.886 求组合数Ⅱ
题目给定n组询问,每组询问给定两个整数a,b,请你输出的值。输入格式第一行包含整数n。接下来n行,每行包含—组a和b。输出格式共n行,每行输出—个询问的解。数据范围1#includeusingnamespacestd;typedeflonglongLL;constintN=100010,mod=1e9+7;intfact[N],infact[N];intqmi(inta,intk,intp){in
iAkuya
·
2023-10-08 20:59
java算法实录
算法
Acwing
.889 满足条件的01序列
题目给定n个0和n个1,它们将按照某种顺序排成长度为2n的序列,求它们能排列成的所有序列中,能够满足任意前缀序列中0的个数都不少于1的个数的序列有多少个。输出的答案对109+7取模。输入格式共一行,包含整数n。输出格式共一行,包含一个整数,表示答案。数据范围1≤n≤105输入样例:3输出样例:5题解#include#includeusingnamespacestd;typedeflonglongL
iAkuya
·
2023-10-08 20:59
java算法实录
算法
Acwing
3485. 最大异或和(trie树)
题目给定一个非负整数数列a,初始长度为N。请在所有长度不超过M的连续子数组中,找出子数组异或和的最大值。子数组的异或和即为子数组中所有元素按位异或得到的结果。注意:子数组可以为空。输入格式第一行包含两个整数N,M。第二行包含N个整数,其中第i个为ai。输出格式输出可以得到的子数组异或和的最大值。数据范围对于20%的数据,1≤M≤N≤100对于50%的数据,1≤M≤N≤1000对于100%的数据,1
iAkuya
·
2023-10-08 20:28
java算法实录
java
算法
开发语言
Acwing
143. 最大异或对(Trie树)
Acwing
143.最大异或对(Trie树)在给定的N个整数A1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少?输入格式第一行输入一个整数N。第二行输入N个整数A1~AN。
cocoshe_
·
2023-10-08 20:26
算法
数据结构
算法
数据结构
acwing
143. 最大异或对--Trie
acwing
143.最大异或对题目描述在给定的N个整数A1,A2……ANA_1,A_2……A_NA1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少?输入格式第一行输入一个整数N。
Weach
·
2023-10-08 20:55
数据结构
算法
AcWing
143.最大异或对
题目链接:https://www.
acwing
.com/problem/content/description/145/在给定的N个整数A1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少
墨韵*
·
2023-10-08 20:25
trie
acm
字典树
异或
贪心算法
Acwing
143. 最大异或对
题目在给定的N个整数A1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少?输入格式第一行输入一个整数N。第二行输入N个整数A1~AN。输出格式输出一个整数表示答案。数据范围1≤N≤105,0≤Ai#include#include#includeusingnamespacestd;typedefunsignedlonglongull;constintN=10000010,P=13
Aurora0725
·
2023-10-08 20:21
c++
算法
AcWing
143. 最大异或对(trie+贪心)
#includeusingnamespacestd;constintN=100010,M=N*31;intson[M][2],idx,a[N];voidadd(intx){intp=0;for(inti=30;i>=0;i--){intt=x>>i&1;if(!son[p][t]){son[p][t]=++idx;}p=son[p][t];}}intsearch(intx){intp=0,res=
秘制函数
·
2023-10-08 20:20
数据结构
贪心
算法
c++
AcWing
143. 最大异或对(Trie树)
题目链接:点击查看题目描述:在给定的N个整数A1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少?输入输出格式:输入第一行输入一个整数N。第二行输入N个整数A1~AN。输出输出一个整数表示答案。输入输出样例:输入3123输出3题目分析:若用暴力做法,本题应该这样做,通过两重循环对区间内的数两两进行异或操作,并通过res记录其中的最大值,时间复杂度为o(n^2),在1e5的数据范
在森林中麋了鹿
·
2023-10-08 20:19
早年算法竞赛学过的知识点
Trie
AcWing
143. 最大异或对
原题链接如下:
AcWing
143.最大异或对大佬题解链接:题解先给个大致图解截图自y总的上课笔记这题首先暴力做法就不阐述了,相信大家都会然后就按照y总教我们的,暴力一般是两层循环,我们就要从暴力之中去寻找优化
Xin_Hack
·
2023-10-08 20:19
Acwing
算法
c++
数据结构
Trie
AcWing
143. 最大异或对
Trie
AcWing
143.最大异或对原题链接
AcWing
143.最大异或对算法标签Trie字典树贪心思路首先考虑暴力做法代码#include#defineintlonglong#definerep(i
飞滕人生TYF
·
2023-10-08 20:44
算法
算法
c++
贪心算法
【Trie树】|
AcWing
143. 最大异或对
题目描述在给定的N个整数A1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少?输入格式第一行输入一个整数N。第二行输入N个整数A1~AN。输出格式输出一个整数表示答案。数据范围1≤N≤105,0≤Ai-1;i--)t=x>>i&1;从最高位开始取,每次取一位。且这里只能取1或0,不能取别的数,所以不能写成t=x&(1#defineread(x)scanf("%d",&x)usi
种下一颗草莓
·
2023-10-08 20:42
算法设计与分析入门
字符串
算法
数据结构
Acwing
.143 最大异或对(trie树)
题目在给定的N个整数A1,A2.…Ax中选出两个进行xor(异或)运算,得到的结果最大是多少?输入格式第一行输入一个整数N。第二行输入N个整数A1~AN。输出格式输出一个整数表示答案。数据范围1≤N≤105,0≤A=0;i--){intu=x>>i&1;if(son[p][u]==0)son[p][u]=++idx;p=son[p][u];}}publicstaticintquery(intx){
iAkuya
·
2023-10-08 20:39
java算法实录
算法
java
数据结构
【
ACwing
算法基础课】第一讲
1.快排模板1.1快速排序算法思路:确定枢轴元素x(通常取:q[l],q[r],q[(l+r)/2],随机)调整区间,使得x左侧元素皆小于等于x,右侧元素皆大于等于x递归处理左右两侧//快速排序算法模板voidquick_sort(intq[],intl,intr){if(l>=r)return;inti=l-1,j=r+1,x=q[l];while(ix);if(i=r)returnq[l];i
MokylinJay
·
2023-10-08 20:20
ACwing算法基础课
算法
排序算法
c++
素数密度——区间筛法(详解)
问题:找素数时间限制:1Sec内存限制:128MB提交:14解决:3[提交][状态]题目描述
算法提高
找素数时间限制:1.0s内存限制:256.0MB问题描述给定区间[L,R],请计算区间中素数的个数。
wastill
·
2023-10-08 13:49
ACM比赛
(高斯消元+模板题)
acwing
883. 高斯消元解线性方程组
883.高斯消元解线性方程组题目链接题目:模拟线性代数中的高斯消元的步骤#include#include#include#includeusingnamespacestd;doublea[110][110];intn;intgauss(){intr=0;//记录行,有几行存在1for(intc=0;c=c;i--){//要倒着,避免a[r][c]改变影响后面a[r][i]/=a[r][c];}//
岁忧
·
2023-10-08 02:45
AcWing
高斯消元
算法
ACWing
883. 高斯消元解线性方程组 模板题
#include#include#includeusingnamespacestd;constintN=110;constdoubleeps=1e-6;intn;doublea[N][N];intgauss(){intc,r;for(c=0,r=0;cfabs(a[t][c]))t=i;if(fabs(a[t][c])=c;i--)a[r][i]/=a[r][c];//把选中的那一行(上面的那行)
-skyline-
·
2023-10-08 02:15
数学-线性代数
java 实现高斯消元_
AcWing
883. 高斯消元解线性方程组(java)
importjava.util.*;//java中的Math.abs()可以用于浮点数取绝对值//String.format("%.2f",x)%.2f"为保留两位小数,x为要输出的数字classMain{staticintN=110;staticdouble[][]a=newdouble[N][N+1];staticintn=0;staticdoubleeps=0.000001;publicst
小黄人95
·
2023-10-08 02:14
java
实现高斯消元
acwing
883 高斯消元解线性方程组
题目地址模拟初等行变换就可以了。有很多种模拟,对于此题方便,有了这个模拟。从第一列开始,枚举未处理的行找到最大的主元素。交换最大主元素的行和当前行。如果最大主元素也为0,则不处理。把主元素的系数化为1.把其他未处理行的主元素列的系数都消去。继续处理,知道最后一列。之后特判r是否把所有列处理完,没有在判断是否无解还是多解。有则把每个x算出来。代码上有许多步骤解释#defineIOSios::sync
ddgo
·
2023-10-08 02:44
数论
acwing
AcWing
883. 高斯消元解线性方程组
Acwing
题目入口题目:输入一个包含n个方程n个未知数的线性方程组。方程组中的系数为实数。求解这个方程组。下图为一个包含m个方程n个未知数的线性方程组示例:输入格式第一行包含整数n。
罚时大师月色
·
2023-10-08 02:44
acwing
数论
零基础学习C++
AcWing
883. 高斯消元解线性方程组(高斯消元)
这完全就是线性代数的矩阵解方程但是代码写起来还是有点麻烦的。题目浮点数比较还是用一个误差计算合适,Java有时候也不能完美的处理浮点数运算。类似这样doublexxx=1e-6;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;importjava.io.PrintWrite
SoKeeGumpCN
·
2023-10-08 02:44
数学算法
[
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++
算法
数论
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
图论
算法
有向图与无向图(邻接表)
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
算法
上一页
21
22
23
24
25
26
27
28
下一页
按字母分类:
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
其他