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

Rust 力扣 - 1652. 拆炸弹

文章目录

  • 题目描述
  • 题解思路
  • 题解代码
  • 题目链接

题目描述

在这里插入图片描述

题解思路

我们只需要遍历长度长度为k的窗口,然后把窗口内数字之和填充到结果数组中的对应位置即可

题解代码

impl Solution {
    pub fn decrypt(code: Vec<i32>, k: i32) -> Vec<i32> {
        let n = code.len();
        let mut ans = vec![0i32; n];

        if k == 0 {
            return ans;
        }

        let mut sum = 0;

        if k > 0 {
            for i in 1..=k as usize {
                sum += code[i];
            }
        
            ans[0] = sum;
        
            for i in 1..n {
                sum += code[(i + k as usize) % n] - code[i];
                ans[i] = sum;
            }    
        } else {
            for i in k..0 {
                sum += code[n + i as usize];
            }

            ans[0] = sum;

            for i in 1..n {
                sum += code[i - 1] - code[(i + k as usize - 1 + n) % n];
                ans[i] = sum;
            }
        }

        ans
    }
}

题目链接

https://leetcode.cn/problems/defuse-the-bomb/


http://www.kler.cn/a/377544.html

相关文章:

  • C++ | Leetcode C++题解之第540题有序数组中的单一元素
  • 成都郝蓉宜恺文化传媒:引领大数据应用新篇章
  • Pr 视频效果:超级键
  • 解决使用Golang的email库发送qq邮件报错short response,错误类型为textproto.ProtocolError
  • 软件测试面试题个人总结
  • 帆软报表新增一行数据后保存,删除选中数据
  • 深入理解跨域资源共享(CORS)安全问题原理及解决思路
  • C++编程法则365天一天一条(27)std::initializer_list 轻量级初始化列表
  • OKHTTP断点续传
  • 【运输&加载码头】仓库新卸物料检测系统源码&数据集全套:改进yolo11-DRBNCSPELAN
  • 利用Docker Compose构建微服务架构
  • 90%的读者都惊呆了!一键生成的微头条,连作者都认不出来是AI作品?
  • Linux常见指令大全(必要+知识点)
  • 设计模式08-行为型模式(命令模式/迭代器模式/观察者模式/Java)
  • 免公网服务器实现DDNS功能(API动态修改DNS解析IP)
  • webstorm 项目如何配置支持 nodejs
  • 怎么提取视频里的音频?关于提取视频里音频的几种方法
  • 【含文档】基于ssm+jsp的老年人健康管理系统(含源码+数据库+lw)
  • 移植 AWTK 到 纯血鸿蒙 (HarmonyOS NEXT) 系统 (4) - 平台适配
  • 计算机视觉和深度学习有什么区别
  • Leetcode21:合并两个有效链表
  • 关于Android Studio Http Proxy设置
  • 力扣排序268题 数字丢失
  • h5st参数解析
  • 石狮自闭症儿童全托:创造多彩童年,共享快乐成长
  • 我们来学mysql -- 连接(原理版)