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/

相关推荐
凉云生烟10 分钟前
机器学习 02- KNN算法
人工智能·算法·机器学习
wabs66612 分钟前
关于动态规划【力扣583.两个字符串的删除操作的思考】
算法·leetcode·动态规划
Nturmoils13 分钟前
订单查询丢数据,查了半天原来是 WHERE 惹的祸
数据库·后端
叫我Paul就好15 分钟前
自从用上 Agents View 之后, 我的心力交瘁感消失了
后端
cui_ruicheng15 分钟前
Python从入门到实战(六):非序列容器
开发语言·python
SamDeepThinking16 分钟前
组合还是继承?我在项目里主要看这两个判断
java·后端·面试
niuju18 分钟前
一种基于 Agent 的需求规范化闭环实践:让合规与规范内建于流程
后端
可编程芯片开发19 分钟前
空气流量和空气压力参数解耦系统simulink建模与仿真
算法
团团崽_七分甜21 分钟前
四大数据库底层原理详解
后端
西西学代码22 分钟前
Flutter---底部导航栏(2)
开发语言·javascript·flutter