Rust 力扣 - 1652. 拆炸弹

文章目录

题目描述

题解思路

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

题解代码

rust 复制代码
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/

相关推荐
用户68026590511912 分钟前
2026年企业级网络监控选型指南
javascript·后端·面试
Rysxt_18 分钟前
Spring Boot 4.0 新特性深度解析与实战教程
java·spring boot·后端
世转神风-19 分钟前
qt-通信协议基础-double转成QbyteArray-小端系统
开发语言·qt
程序员飞哥20 分钟前
2025 年的寒冬,我这个大龄程序员失业了
后端·程序员
surtr126 分钟前
常见排序模板(冒泡排序,希尔排序,堆排序,归并排序,快速排序)
数据结构·算法·贪心算法·排序算法
qq_2562470529 分钟前
Google Labs 新品实测:Mixboard、Flow 和 Learn Your Way 上手体验
后端
web3.088899930 分钟前
小红书笔记评论API接口详情展示
开发语言·笔记·python
手抄二进制31 分钟前
使用Anaconda创建python环境并链接到Jupyter
开发语言·python·jupyter
fengfuyao9851 小时前
经典MUSIC算法程序以及测角精度与阵元间距、阵元数、信噪比、快拍数等的关系
算法
古城小栈1 小时前
go-zero 从入门到实战 全指南(包的)
开发语言·后端·golang