leetcode 1652.拆炸弹

这道题没有什么明确的做法,我们其实可以根据数组的思想来做。

一般来说是一个循环数组的话,我们可以用while来处理。

如果循环次数很少,我们可以用一种思想,那就是把原先的数组再复制一份放在后面,这样就相当于是循环了。这里就用了这种思想进行处理的,然后根据题目模拟就行了。

上代码:

复制代码
class Solution {
public:
    vector<int> decrypt(vector<int>& code, int k) {
        int n=code.size();
        vector<int>res;
        if(n){
        if(k==0)
        {
            for(int i=0;i<n;i++){
                res.push_back(0);
            }
        }
        else if(k>0){
            for(int i=0;i<n;i++){
                code.push_back(code[i]);
            }
        for(int i=0;i<n;i++){
            int sum=0;
            for(int j=i+1;j<i+1+k;j++){
                sum+=code[j];
            }
            res.push_back(sum);
        }
        }
        else{
            for(int i=0;i<n;i++){
                code.push_back(code[i]);
            }
            for(int i=n;i<code.size();i++){
                int haha=0;
                for(int j=i-1;j>=i-abs(k);j--){
                    haha+=code[j];
                }
                res.push_back(haha);
            }
        }
    }
    return res;
    }
};
相关推荐
执携24 分钟前
算法 -- 冒泡排序
数据结构·算法
寻星探路42 分钟前
【算法专题】滑动窗口:从“无重复字符”到“字母异位词”的深度剖析
java·开发语言·c++·人工智能·python·算法·ai
我叫袁小陌1 小时前
C++多线程全面详解
开发语言·c++
wen__xvn1 小时前
代码随想录算法训练营DAY14第六章 二叉树 part02
数据结构·算法·leetcode
Ka1Yan1 小时前
[数组] - 代码随想录(2-6)
数据结构·算法·leetcode
m0_748250032 小时前
C++ 官方文档与标准
开发语言·c++
漫随流水2 小时前
leetcode算法(104.二叉树的最大深度)
数据结构·算法·leetcode·二叉树
matlabgoodboy2 小时前
程序代做python代编程matlab定制代码编写C++代写plc设计java帮做
c++·python·matlab
机器学习之心HML2 小时前
鲸鱼算法(WOA)优化Kriging模型
算法
DYS_房东的猫3 小时前
《 C++ 零基础入门教程》第6章:模板与 STL 算法 —— 写一次,用万次
开发语言·c++·算法