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/

相关推荐
只爱喝胡辣汤1 分钟前
JUC 并发工具与线程安全源码深度解析
后端
只爱喝胡辣汤9 分钟前
03-KafkaProducer 源码分析
后端
只爱喝胡辣汤12 分钟前
13-KRaft 元数据管理与 Raft 协议源码分析
后端
只爱喝胡辣汤15 分钟前
异步线程深度剖析(CompletableFuture/异步模式/虚拟线程)
后端
苏三说技术19 分钟前
推荐一个比ES快5倍的搜索引擎
后端
二月龙21 分钟前
Java 线程池核心参数详解:从原理到生产避坑
后端
小强198822 分钟前
线上 Java 项目 CPU 飙升、OOM 排查思路:完整实战流程
后端
云析赢指标公式网423 分钟前
文华WH6布林轨道均线强弱共振指标公式
前端·算法
承渊政道25 分钟前
【Python编程—从入门到实践】(Python字典:从基础语义到现代工程实践)
开发语言·python·pycharm·字典·嵌套
学编程就要猛26 分钟前
流式编程及Spring中SSE实现
java·后端·spring·流式编程