华为OD机试真题-求幸存数之和【题解分享】

原题内容

给一个正整数列nums,一个跳数jump,及幸存数量left。运算过程为:从索引为0的位置开始向后跳,中间跳过 J 个数字,命中索引为 J+1 的数字,该数被敲出,并从该点起跳,以此类推,直到幸存left个数为止。然后返回幸存数之和。

约束:

  1. 0是第一个起跳点。
  2. 起跳点和命中点之间间隔jump 个数字,已被敲出的数字不计入在内。
  3. 跳到末尾时无缝从头开始(循环查找),并可以多次循环。
  4. 若起始时 left > len(nums) 则无需跳数处理过程。

思路描述

题目本身不难,通过数组模拟整个跳出过程。需注意边界条件:每次跳过jump数后,删除的是下一节点,比如从0出发,跳过j个数,移除的是j+1;下次数数是从j+1处开始数,因为使用list的remove方法移除元素后,元素前移了(坐标减小),因此要人工减一才能保证后续步骤的正确。

代码示例

    def C100_49(l, jump,left):start,sum = 0,0while len(l)!=left:start = (start+jump+1)%len(l)l.remove(l[start])start -=1for x in l:sum+=xreturn sum

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/719892.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

叠罗汉游戏

题目描述 农场的N头奶牛喜欢玩叠罗汉游戏,就是几头奶牛1头奶牛接着1头奶牛的站成一柱子形状。不过奶牛的力量不一样,用数值Ci表示第i头奶牛它的上面最多可以站多少头奶牛,问这些奶牛最少可以站成几个柱子形状。 输入格式 输入文件名&#…

怎样获得CNVD原创漏洞证书

1. 前言 因为工作变动,我最近把这一年多的工作挖漏洞的一些工作成果提交到了CNVD漏洞平台(https://www.cnvd.org.cn/),获得了多张CNVD原创漏洞证书。本篇博客讲下怎么获得CNVD原创漏洞证书,以供大家参考。 2. CNVD原创…

Canvas笔记03:Canvas元素功能、属性、获取、原理等一文讲透

hello,我是贝格前端工场,最近在学习canvas,分享一些canvas的一些知识点笔记,本期分享canvas元素的知识,欢迎老铁们一同学习,欢迎关注,如有前端项目可以私信贝格。 Canvas元素是HTML5中的一个重…

基于Intel x86的轨道交通/印度地铁自动售检票(AFC)系统

印度孟买地铁3号线 目前,印度孟买3号线正在全面建设中,这条全长33.5公里的线路将是孟买第一条地下地铁线路,设有27个地下车站和1个地面车站,此条线路的成功通车将连接其他地铁线路、单轨铁路、郊区铁路、城际铁路和孟买机场等&am…

解决prettier 报错 Delete `␍`

根目录(么有的话)新建 .prettierrc.js配置文件 module.exports {tabWidth: 2,semi: true,printWith: 80,singleQuote: true,quoteProps: consistent,htmlWhitespaceSensitivity: strict,vueIndentScriptAndStyle: true,// 主要是最后一行endOfLine:aut…

Ubuntu环境使用docker构建并运行SpringBoot镜像

今天Ubuntu环境使用docker构建并运行SpringBoot镜像,看文章之前建议先查看安装流程: Linux环境之Ubuntu安装Docker流程 一、镜像打包过程及执行 1、创建一个测试目录 mkdir javaDemo 2、springBoot的包复制到此目录下 cp demo1-0.0.1-SNAPSHOT.jar /data/app/…

计算机网络实验 基于ENSP的协议分析

实验二 基于eNSP的协议分析 一、实验目的: 1)熟悉VRP的基本操作命令 2)掌握ARP协议的基本工作原理 3)掌握IP协议的基本工作原理 4)掌握ICMP协议的基本工作原理 二、实验内容: 1、场景1:两台PC机…

React-子传父

1.概念 说明&#xff1a;React中子组件向父组件传递数据通常涉及回调函数和状态提升等方法。 2.代码实现 2.1绑定事件 说明&#xff1a;父组件绑定自定义事件 <Son onGetSonMsg{getMsg}></Son> 2.2接受事件 说明&#xff1a;子组件接受父组件的自定义事件名称…

前端食堂技术周刊第 114 期:Interop 2024、TS 5.4 RC、2 月登陆浏览器的新功能、JSR、AI SDK 3.0

美味值&#xff1a;&#x1f31f;&#x1f31f;&#x1f31f;&#x1f31f;&#x1f31f; 口味&#xff1a;凉拌鸡架 食堂技术周刊仓库地址&#xff1a;https://github.com/Geekhyt/weekly 大家好&#xff0c;我是童欧巴。欢迎来到前端食堂技术周刊&#xff0c;我们先来看下…

机器学习模型总结

多元线性回归&#xff08;linear regression&#xff09; 自变量&#xff1a;连续型数据&#xff0c;因变量&#xff1a;连续型数据 选自&#xff1a;周志华老师《机器学习》P53-55 思想&#xff1a;残差平方和达到最小时的关系式子即为所求&#xff0c;残差平方和&#xff1a…

【学习心得】爬虫JS逆向通解思路

我希望能总结一个涵盖大部分爬虫逆向问题的固定思路&#xff0c;在这个思路框架下可以很高效的进行逆向爬虫开发。目前我仍在总结中&#xff0c;下面的通解思路尚不完善&#xff0c;还望各位读者见谅。 一、第一步&#xff1a;明确反爬手段 反爬手段可以分为几个大类 &#…

【ARM 嵌入式 编译系列 10.5 -- .linkonce 段详细介绍】

请阅读【嵌入式开发学习必备专栏 之 ARM GCC 编译专栏】 文章目录 .linkonce 段详细介绍GOT 全局偏移表 .linkonce 段详细介绍 .gnu.linkonce.t是一个链接器区段&#xff0c;用于存放那些只需要链接一次的函数或者符号。区段名称后面通常跟着函数或者符号的名字。 关于linko…

20240304-2-计算机网络

计算机网络 知识体系 Questions 1.计算机网络分层的优点和缺点 优点 各层之间是独立的&#xff1b;灵活性好&#xff1b;结构上可分割开&#xff1b;易于实现和维护&#xff1b;能促进标准化工作。 缺点&#xff1a; 降低效率&#xff1b;有些功能会在不同的层次中重复出现&…

leetcode 300.最长递增子序列

动态规划的经典问题之一。 思路&#xff1a;这里的dp数组定义与之前做的那个打家劫舍得模板不一样&#xff0c;上一个计算的是偷多少家获得的最大钱财&#xff0c;是对于房子个数的定义。这里并不是&#xff0c;这里是对于一个数结尾作为dp数组的定义。 解释一下&#xff0c;…

微信小程序屏蔽控制台黄色提示信息

我们很多时候 一个小程序 啥都没有 终端就一直报一些黄色的警告 可以打开项目的 project.config.json 找一下setting 下面有没有 checkSiteMap 字段 如果没有加一个 如果有 直接将值改为 false 这样 再运行 就不会有这个黄色的提示信息了

【GStreamer】basic-tutorial-3:信号注册、发送、连接、处理

【目录】郭老二博文之:图像视频汇总 1、示例注释 #include <gst/gst.h>/ 1、将必要的元素放到一个结构体中,方便在各个回调函数中调用 */ typedef struct _CustomData {GstElement *pipeline;GstElement *source;

第1章:绪论 1.1数据库系统概述

文章目录 1.1 数据库系统概述1.1.1 数据库的4个基本概念1.1.2 数据管理技术的产生和发展1.1.3 数据库系统的特点 1.1 数据库系统概述 1.1.1 数据库的4个基本概念 数据(Data) 是数据库中存储的基本对象 数据的定义&#xff1a;描述事物的符号记录 数据的种类&#xff1a;文本、…

【C语言】动态分配内存给一维、二维数组

前言 对于如何将未知数量的数组存放系统&#xff0c;可以用动态分配数组来解决&#xff0c;那么如果想将内存动态分配给一个未知大小的二维数组&#xff0c;该如何&#xff1f; 一、动态分配内存给一维数组 #include<stdio.h> #include<stdlib.h>int main() {//输…

Java多态性的作用及解析

多态性是 Java 面向对象编程的一个重要特性,它的主要作用包括以下几个方面: 提高代码的可扩展性:多态性使得我们可以在不修改现有代码的情况下,通过继承和重写方法来添加新的行为。这意味着我们可以在不影响现有功能的前提下,对代码进行扩展和修改。 增强代码的可读性:使…

JVM 基础知识学习笔记

JVM 基础知识学习笔记 1. JVM 介绍 什么是 JVM ? JVM 本质上是一个运行在计算机上的程序&#xff0c;它的职责是运行 Java 字节码文件。 JVM 的功能是什么 ? 解释和运行: 对字节码文件中的指令&#xff0c;实时的解释成机器码&#xff0c;让计算机执行。内存管理: 自动为…