#第一章
yangmc04
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
高精度 补档 使用压位的方法
效率提升一倍。原创 2024-12-09 01:13:54 · 190 阅读 · 0 评论 -
一维前缀和 公式
输入一个长度为 n的整数序列。接下来再输入 m个询问,每个询问输入一对 l,r。对于每个询问,输出原序列中从第 l个数到第 r个数的和。输入格式第一行包含两个整数 n和 m。第二行包含 n个整数,表示整数数列。接下来 m行,每行包含两个整数 l和 r,表示一个询问的区间范围。输出格式共 m行,每行输出一个询问的结果。数据范围1≤l≤r≤n,1≤n,m≤100000,−1000≤数列中元素的值≤1000输入样例:5 32 1 3 6 41 21 32 4输出样原创 2024-11-10 00:37:37 · 366 阅读 · 0 评论 -
快速排序 模板
文章目录一、题目二、思路及代码1.思路第一步:第二步:第三步:2.答案总结Just Review.提示:以下是本篇文章正文内容一、题目给定你一个长度为 n 的整数数列。请你使用快速排序对这个数列按照从小到大进行排序。并将排好序的数列按顺序输出。**输入格式输入共两行,第一行包含整数 n。第二行包含 n 个整数(所有整数均在 1∼109 范围内),表示整个数列。输出格式输出共一行,包含 n 个整数,表示排好序的数列。数据范围1 ≤ n ≤ 100000输入样例:5原创 2024-11-02 00:30:07 · 205 阅读 · 0 评论 -
求逆序对的数量
文章目录一、题目二、思路及代码1.思路第一步:第二步:第三步:2.答案总结Just Review.提示:以下是本篇文章正文内容一、题目给定一个长度为 n的整数数列,请你计算数列中的逆序对的数量。逆序对的定义如下:对于数列的第 i个和第 j个元素,如果满足 i<j且 a[i]>a[j],则其为一个逆序对;否则不是。输入格式第一行包含整数 n,表示数列的长度。第二行包含 n个整数,表示整个数列。输出格式输出一个整数,表示逆序对的个数。数据范围1≤n≤100000,原创 2024-11-02 16:22:46 · 800 阅读 · 0 评论 -
二维前缀和 子矩阵的和
输入一个 n行 m列的整数矩阵,再输入 q个询问,每个询问包含四个整数 x1,y1,x2,y2,表示一个子矩阵的左上角坐标和右下角坐标。对于每个询问输出子矩阵中所有数的和。输入格式第一行包含三个整数 n,m,q。接下来 n行,每行包含 m个整数,表示整数矩阵。接下来 q行,每行包含四个整数 x1,y1,x2,y2,表示一组询问。输出格式共 q行,每行输出一个询问的结果。数据范围1≤n,m≤1000,1≤q≤200000,1≤x1≤x2≤n,1≤y1≤y2≤m,−10原创 2024-11-10 00:55:15 · 386 阅读 · 0 评论 -
打卡。。。
题目:一共有 n个数,编号是 1∼n1,最开始每个数各自在一个集合中。现在要进行 m个操作,操作共有两种:M a b,将编号为 a和 b 的两个数所在的集合合并,如果两个数已经在同一个集合中,则忽略这个操作;Q a b,询问编号为 a 和 b 的两个数是否在同一个集合中;输入样例:4 5M 1 2M 3 4Q 1 2Q 1 3Q 3 4输出样例:YesNoYes。原创 2023-12-31 18:22:18 · 415 阅读 · 1 评论 -
高精度 加法 模板
给定两个正整数(不含前导 0),计算它们的和。输入格式共两行,每行包含一个整数。输出格式共一行,包含所求的和。数据范围1≤整数长度≤100000输入样例:1223输出样例:35大整数如何存呢?使用的是数组。小端法。便于进位。注释已经写清楚了, 不再多言。原创 2024-11-07 13:13:29 · 281 阅读 · 0 评论 -
二维差分矩阵 模板题
输入一个 n行 m列的整数矩阵,再输入 q个操作,每个操作包含五个整数 x1,y1,x2,y2,c,其中 (x1,y1)和 (x2,y2)表示一个子矩阵的左上角坐标和右下角坐标。每个操作都要将选中的子矩阵中的每个元素的值加上 c。请你将进行完所有操作后的矩阵输出。输入格式第一行包含整数 n,m,q。接下来 n行,每行包含 m个整数,表示整数矩阵。接下来 q行,每行包含 5个整数 x1,y1,x2,y2,c,表示一个操作。输出格式共 n行,每行 m个整数,表示所有操作进行完毕原创 2024-11-11 22:07:06 · 501 阅读 · 0 评论 -
高精度 乘法 模板
给定两个非负整数(不含前导 0) A和 B,请你计算 A×B的值。输入格式共两行,第一行包含整数 A,第二行包含整数 B。输出格式共一行,包含 A×B 的值。数据范围1≤A的长度≤100000,0≤B≤10000输入样例:23输出样例:6大整数如何存呢?使用的是数组。小端法。便于进位。乘法和加法思路类似, 进位只是不一定是1罢了。原创 2024-11-07 17:09:29 · 301 阅读 · 0 评论 -
区间和 离散化 模板题
假定有一个无限长的数轴,数轴上每个坐标上的数都是 0。现在,我们首先进行 n次操作,每次操作将某一位置 x上的数加 c。接下来,进行 m次询问,每个询问包含两个整数 l和 r,你需要求出在区间 [l,r]之间的所有数的和。输入格式第一行包含两个整数 n和 m。接下来 n行,每行包含两个整数 x和 c。再接下来 m行,每行包含两个整数 l和 r。输出格式共 m行,每行输出一个询问中所求的区间内数字和。数据范围−109≤x≤109,1≤n,m≤105,−109≤l原创 2024-11-16 18:24:23 · 304 阅读 · 0 评论 -
第 k 个数(快速选择算法)
文章目录一、题目二、思路及代码1.思路第一步:第二步:第三步:2.答案总结Just Review.提示:以下是本篇文章正文内容一、题目给定一个长度为 n的整数数列,以及一个整数 k,请用快速选择算法求出数列从小到大排序的第 k个数。输入格式第一行包含两个整数 n和 k。第二行包含 n个整数(所有整数均在 1∼109 范围内),表示整数数列。输出格式输出一个整数,表示数列的第 k小数。数据范围1≤n≤100000,1≤k≤n输入样例:5 32 4 1 5 3输出样原创 2024-11-02 00:45:22 · 233 阅读 · 0 评论 -
浮点数二分 模板
给定一个浮点数 n,求它的三次方根。输入格式共一行,包含一个浮点数 n。输出格式共一行,包含一个浮点数,表示问题的解。注意,结果保留 6 位小数。数据范围−10000≤n≤10000输入样例:1000.00输出样例:10.000000yxc的整数二分模板:原创 2024-11-03 16:57:53 · 310 阅读 · 0 评论 -
数组元素的目标和
给定两个升序排序的有序数组 A和 B,以及一个目标值 x。数组下标从 0开始。请你求出满足 A[i]+B[j]=x的数对 (i,j)。数据保证有唯一解。输入格式第一行包含三个整数 n,m,x,分别表示 A的长度,B的长度以及目标值 x。第二行包含 n个整数,表示数组 A。第三行包含 m个整数,表示数组 B。输出格式共一行,包含两个整数 i和 j。数据范围数组长度不超过 105。同一数组内元素各不相同。1≤数组元素≤109输入样例:4 5 61 2 4 73原创 2024-11-15 01:46:51 · 247 阅读 · 0 评论 -
判断子序列
给定一个长度为 n的整数序列 a1,a2,…,an以及一个长度为 m的整数序列 b1,b2,…,bm。请你判断 a序列是否为 b序列的子序列。子序列指序列的一部分项按原有次序排列而得的序列,例如序列 {a1,a3,a5}是序列 {a1,a2,a3,a4,a5}的一个子序列。输入格式第一行包含两个整数 n,m。第二行包含 n个整数,表示 a1,a2,…,an。第三行包含 m个整数,表示 b1,b2,…,bm。输出格式如果 a序列是 b序列的子序列,输出一行 Yes。否则,输出原创 2024-11-15 20:04:34 · 272 阅读 · 0 评论 -
高精度 除法 模板
给定两个非负整数(不含前导 0) A,B,请你计算 A/B的商和余数。输入格式共两行,第一行包含整数 A,第二行包含整数 B。输出格式共两行,第一行输出所求的商,第二行输出所求余数。数据范围1≤A的长度≤100000,1≤B≤10000,B一定不为 0输入样例:72输出样例:31大整数如何存呢?使用的是数组。小端法。便于进位。转载 2024-11-07 18:16:58 · 169 阅读 · 0 评论 -
位运算 模板题
给定一个长度为 n的数列,请你求出数列中每个数的二进制表示中 1的个数。输入格式第一行包含整数 n。第二行包含 n个整数,表示整个数列。输出格式共一行,包含 n个整数,其中的第 i个数表示数列中的第 i个数的二进制表示中 1的个数。数据范围1≤n≤100000,0≤数列中元素的值≤109输入样例:51 2 3 4 5输出样例:1 1 2 1 2lowbit(x)return x & -x;-x = ~x + 1;作用是获得x中最后的一位1.本题通过不断相减 直到x =原创 2024-11-15 20:29:09 · 240 阅读 · 0 评论 -
归并排序 模板
文章目录一、题目二、思路及代码1.思路第一步:第二步:第三步:2.答案总结Just Review.提示:以下是本篇文章正文内容一、题目给定你一个长度为 n 的整数数列。请你使用归并排序对这个数列按照从小到大进行排序。并将排好序的数列按顺序输出。输入格式输入共两行,第一行包含整数 n。第二行包含 n个整数(所有整数均在 1∼109范围内),表示整个数列。输出格式输出共一行,包含 n个整数,表示排好序的数列。数据范围1≤n≤100000输入样例:53 1 2 4原创 2024-11-02 14:22:35 · 183 阅读 · 0 评论 -
整数的二分模板
二、思路及代码1.思路yxc的整数二分模板:原创 2024-11-03 16:49:23 · 248 阅读 · 0 评论 -
最长连续不重复子序列
给定一个长度为 n的整数序列,请找出最长的不包含重复的数的连续区间,输出它的长度。输入格式第一行包含整数 n。第二行包含 n个整数(均在 0∼105范围内),表示整数序列。输出格式共一行,包含一个整数,表示最长的不包含重复的数的连续区间的长度。数据范围1≤n≤105输入样例:51 2 2 3 5输出样例:3双指针的思想。在注释里。原创 2024-11-12 21:01:27 · 216 阅读 · 0 评论 -
高精度 减法 模板
给定两个正整数(不含前导 0),计算它们的差,计算结果可能为负数。输入格式共两行,每行包含一个整数。输出格式共一行,包含所求的差。数据范围1≤整数长度≤105输入样例:3211输出样例:21大整数如何存呢?使用的是数组。小端法。便于进位。注释已经写清楚了, 不再多言。原创 2024-11-07 16:29:28 · 321 阅读 · 0 评论 -
一维差分 公式
输入一个长度为 n的整数序列。接下来输入 m个操作,每个操作包含三个整数 l,r,c,表示将序列中 [l,r]之间的每个数加上 c。请你输出进行完所有操作后的序列。输入格式第一行包含两个整数 n和 m。第二行包含 n个整数,表示整数序列。接下来 m行,每行包含三个整数 l,r,c,表示一个操作。输出格式共一行,包含 n个整数,表示最终序列。数据范围1≤n,m≤100000,1≤l≤r≤n,−1000≤c≤1000,−1000≤整数序列中元素的值≤1000输入样例:6原创 2024-11-11 21:38:50 · 329 阅读 · 0 评论 -
区间合并 模板题
给定 n个区间 [li,ri],要求合并所有有交集的区间。注意如果在端点处相交,也算有交集。输出合并完成后的区间个数。例如:[1,3]和 [2,6]可以合并为一个区间 [1,6]。输入格式第一行包含整数 n。接下来 n行,每行包含两个整数 l和 r。输出格式共一行,包含一个整数,表示合并区间完成后的区间个数。数据范围1≤n≤100000,−109≤li≤ri≤109输入样例:51 22 45 67 87 9输出样例:3贪心 + 模拟原创 2024-11-16 19:37:32 · 202 阅读 · 0 评论
分享