摘要:
差分矩阵 输入一个 n 行 m 列的整数矩阵,再输入 q 个操作,每个操作包含五个整数 x1, y1, x2, y2, c,其中 (x1, y1) 和 (x2, y2) 表示一个子矩阵的左上角坐标和右下角坐标。每个操作都要将选中的子矩阵中的每个元素的值加上 c。请你将进行完所有操作后的矩阵输出。 所 阅读全文
差分矩阵 输入一个 n 行 m 列的整数矩阵,再输入 q 个操作,每个操作包含五个整数 x1, y1, x2, y2, c,其中 (x1, y1) 和 (x2, y2) 表示一个子矩阵的左上角坐标和右下角坐标。每个操作都要将选中的子矩阵中的每个元素的值加上 c。请你将进行完所有操作后的矩阵输出。 所 阅读全文
posted @ 2025-07-03 17:53
起个数先
阅读(41)
评论(0)
推荐(0)
摘要:
差分 输入一个长度为 n 的整数序列。 接下来输入 m 个操作,每个操作包含三个整数 l, r, c,表示将序列中 [l, r] 之间的每个数加上 c。 请你输出进行完所有操作后的序列。 所用方法和基本原理 差分原理: 差分是前缀和的逆运算。对于给定的数组 a,其差分数组 b 满足 b[i] = a 阅读全文
差分 输入一个长度为 n 的整数序列。 接下来输入 m 个操作,每个操作包含三个整数 l, r, c,表示将序列中 [l, r] 之间的每个数加上 c。 请你输出进行完所有操作后的序列。 所用方法和基本原理 差分原理: 差分是前缀和的逆运算。对于给定的数组 a,其差分数组 b 满足 b[i] = a 阅读全文
posted @ 2025-07-03 17:52
起个数先
阅读(25)
评论(0)
推荐(0)

子矩阵的和 输入一个 n 行 m 列的整数矩阵,再输入 q 个询问,每个询问包含四个整数 x1, y1, x2, y2,表示一个子矩阵的左上角坐标和右下角坐标。对于每个询问,输出子矩阵中所有数的和。 所用方法和基本原理 二维前缀和数组构建: 定义了 getPrefixSum 方法用于生成二维前缀和数
前缀和 输入一个长度为n的整数序列。接下来再输入m个询问,每个询问输入一对l, r。对于每个询问,输出原序列中从第l个数到第r个数的和。 所用方法和基本原理 前缀和数组的构建: 首先定义了一个方法getPrefixSum来构建前缀和数组。前缀和数组s的作用是记录原数组arr从起始位置到当前位置的所有
高精度除法 给定两个非负整数(不含前导 0)A,B,请你计算 A/B 的商和余数。 所用方法和基本原理 数据预处理: - 首先获取两个字符串 A 和 b 的长度 ALen 和 bLen。 - 创建一个数组 divA 来存储 A 的每一位数字,从字符串 A 的末尾开始遍历,将每个字符转换为数字存入数组
高精度乘法 给定两个非负整数(不含前导 0)A 和 B,请你计算 A×B 的值。 所用方法和基本原理 该代码采用一种简化的乘法方式来实现大数乘法(大数x小数),基本原理如下: 数位拆分与转换: - 对于字符串 A,将其每一位数字拆分出来存储到数组 mulA 中,从字符串末尾开始处理,方便后续按位运算
高精度加法 给定两个正整数(不含前导 0),计算它们的和,即大数求和。 所用方法和基本原理 该代码采用模拟竖式加法的方法来实现大数求和,基本原理如下: 初始化数组: 首先找到两个字符串长度的最大值 maxLen,创建两个长度为 maxLen 的数组 addA 和 addB,用于存储两个数按位拆分后的
高精度减法 给定两个正整数(不含前导 0),计算它们的差,计算结果可能为负数,即大数减法。 所用方法和基本原理 该代码通过模拟竖式减法的方式实现大数减法,具体原理如下: 初始化与数位拆分: 首先确定两个数 a 和 b 的长度 aLen 和 bLen,并取二者长度的最大值 maxLen。 创建两个长度
逆序对数量 给定一个长度为 n 的整数数列,请你计算数列中的逆序对的数量。 逆序对的定义如下:对于数列的第 i 个和第 j 个元素,如果满足 i < j 且 a[i] > a[j],则其为一个逆序对;否则不是。 所用方法和基本原理 该代码使用归并排序的思想来计算逆序对的数量。基本原理如下: 分解:和
第K个数 给定一个长度为 n 的整数数列,以及一个整数 k,请用快速选择算法求出数列从小到大排序后的第 k 个数。 所用方法和基本原理 快速选择算法是基于快速排序思想的一种选择算法。其基本原理如下: 划分操作:选择一个基准元素(这里选择数组中间位置的元素),通过双指针法将数组分为两部分,使得左边部分
浙公网安备 33010602011771号