当前位置: 首页 > news >正文

wordpress博客主题模板免费百度关键词网站排名优化软件

wordpress博客主题模板免费,百度关键词网站排名优化软件,做360网站优化排,netcore网站开发实战文章目录 一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【解题思路】八【时间频度】九【代码实现】十【提交结果】 一【题目类别】 前缀和 二【题目难度】 中等 三【题目编号】 523.连续的子数组和 四【题目描述】 给你一个… 文章目录 一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【解题思路】八【时间频度】九【代码实现】十【提交结果】 一【题目类别】 前缀和 二【题目难度】 中等 三【题目编号】 523.连续的子数组和 四【题目描述】 给你一个整数数组 nums 和一个整数 k 如果 nums 有一个 好的子数组 返回 true 否则返回 false一个 好的子数组 是 长度 至少为 2 且子数组元素总和为 k 的倍数。 注意 子数组 是数组中 连续 的部分。如果存在一个整数 n 令整数 x 符合 x n * k 则称 x 是 k 的一个倍数。0 始终 视为 k 的一个倍数。 五【题目示例】 示例 1 输入nums [23,2,4,6,7], k 6输出true解释[2,4] 是一个大小为 2 的子数组并且和为 6 。 示例 2 输入nums [23,2,6,4,7], k 6输出true解释[23, 2, 6, 4, 7] 是大小为 5 的子数组并且和为 42 。 42 是 6 的倍数因为 42 7 * 6 且 7 是一个整数。 示例 3 输入nums [23,2,6,4,7], k 13输出false 六【题目提示】 1 n u m s . l e n g t h 1 0 5 1 nums.length 10^5 1nums.length105 0 n u m s [ i ] 1 0 9 0 nums[i] 10^9 0nums[i]109 0 s u m ( n u m s [ i ] ) 2 31 − 1 0 sum(nums[i]) 2^{31} - 1 0sum(nums[i])231−1 1 k 2 31 − 1 1 k 2^{31} - 1 1k231−1 七【解题思路】 前缀和思想设 prefix_sum[i] 表示数组 nums 的前缀和即 prefix_sum[i] 表示 nums 从第 0 到第 i 的元素的和。对于任意两个下标 i 和 ji j子数组 nums[i1:j1] 的和可以表示为 prefix_sum[j] - prefix_sum[i]。取模运算我们需要找到两个前缀和 prefix_sum[j] 和 prefix_sum[i]使得它们的差 prefix_sum[j] - prefix_sum[i] 是 k 的倍数。我们可以通过对前缀和取模的方式哈希表来简化这个问题如果 prefix_sum[j] % k prefix_sum[i] % k那么 prefix_sum[j] - prefix_sum[i] 一定是 k 的倍数同余定理。边界情况处理 如果 k 0则子数组的和必须为 0所以需要特判。由于子数组的长度至少为 2所以当找到满足条件的前缀和时还需要确保两个下标之间的距离大于等于 2。 最后返回结果即可具体细节可以参考下面的代码 八【时间频度】 时间复杂度 O ( m ) O(m) O(m) m m m为传入的数组的长度空间复杂度 O ( m i n ( m , k ) ) O(min(m, k)) O(min(m,k)) m m m为传入的数组的长度 k k k为计算得到的余数的个数 九【代码实现】 Java语言版 class Solution {public boolean checkSubarraySum(int[] nums, int k) {// 用于存储取模后的前缀和与其下标, 初始化表示前缀和为0时在-1位置HashMapInteger, Integer hashMap new HashMapInteger, Integer();hashMap.put(0, -1);// 初始化前缀和int prefixSum 0;for (int i 0; i nums.length; i) {// 更新前缀和prefixSum nums[i];if (k ! 0) {// 对 k 取模prefixSum % k;}// 检查当前取模后的前缀和是否已经在哈希表中if (hashMap.containsKey(prefixSum)) {// 如果存在并且下标差大于等于 2则找到符合条件的子数组if (i - hashMap.get(prefixSum) 1) {return true;}} else {// 不存在则记录当前前缀和对应的下标hashMap.put(prefixSum, i);}}return false;} }Python语言版 class Solution:def checkSubarraySum(self, nums: List[int], k: int) - bool:# 用于存储取模后的前缀和与其下标, 初始化表示前缀和为0时在-1位置hash_map {0: -1}# 初始化前缀和prefix_sum 0for i, num in enumerate(nums):# 更新前缀和prefix_sum numif k ! 0:# 对 k 取模prefix_sum % k# 检查当前取模后的前缀和是否已经在哈希表中if prefix_sum in hash_map:# 如果存在并且下标差大于等于 2则找到符合条件的子数组if i - hash_map[prefix_sum] 1:return Trueelse:# 不存在则记录当前前缀和对应的下标hash_map[prefix_sum] ireturn FalseC语言版 class Solution { public:bool checkSubarraySum(vectorint nums, int k) {// 用于存储取模后的前缀和与其下标, 初始化表示前缀和为0时在-1位置unordered_mapint, int hashMap;hashMap[0] -1;// 初始化前缀和int prefixSum 0;for (int i 0; i nums.size(); i) {// 更新前缀和prefixSum nums[i];if (k ! 0) {// 对 k 取模prefixSum % k;}// 检查当前取模后的前缀和是否已经在哈希表中if (hashMap.find(prefixSum) ! hashMap.end()) {// 如果存在并且下标差大于等于 2则找到符合条件的子数组if (i - hashMap[prefixSum] 1) {return true;}} else {// 不存在则记录当前前缀和对应的下标hashMap[prefixSum] i;}}return false;} };十【提交结果】 Java语言版 Python语言版 C语言版
http://www.dnsts.com.cn/news/55973.html

相关文章:

  • 响应式网站建站价格外贸推广方式
  • 如何在阿里云建设网站网站的建设初步定位
  • 怎么做seo网站关键词优化网站维护一般怎么做
  • 福州企业网站推广推广专员
  • 企业网站开发流程简述wordpress 搜索 任意
  • 网站怎样上线天天做网站
  • wordpress网站的CDN设置百度网盘客户端
  • 建站之星网站 和服务器网站建设与管理难学吗
  • 最专业的做网站公司哪家好节能 建材 工程标准
  • 织梦网站最新漏洞入侵seo发展现状
  • app网站开发成本html网页代码案例
  • 网站实名制注册怎么做北京网络推广平台
  • 用高权重网站的目录做站群怎么样免费网站2021年能用的网址
  • 彩票网站多少钱可以做河南两学一做网站
  • 自己搭建一个网站iis如何做网站管理器
  • WaP网站模块哪个网站使用vue 做的
  • 欧洲购物网站排名昆明网站建设服务至上
  • 网站维护是什么样济南网站制作技术交流
  • 淇县网站设计公司如何查找织梦网站后台
  • ps做特效哪个网站好一学一做看视频网站有哪些内容
  • 常用的网站制作软件wordpress 表单提交
  • 电子商务网站建设与管理王生春微推客
  • 南通网站制作设计软件优化网站
  • 注册网站时应注意什么小狗做爰网站
  • dede 获取网站标题爱站网是干什么的
  • 如何写好网站建设方案营销方式
  • 网站接口怎么做动易2006学校网站
  • 网站建设不备案后果免费做头像网站有哪些
  • jsp做网站实例教程百度快照优化排名推广
  • 视频网站seo怎么做wordpress 输出the id