4.3 传送门
算法设计与分析 4.3 传送门
题目描述
现在有 n 个传送门,你处在第一个传送门的位置,第 i 个传送门可以将你传送到第 i-a[i] 到第 i+a[i] 范围内的任意一个传送门,请问你最少需要几次操作,使得你可以传送到最后一个传送门的位置。
保证题目一定有解。
输入格式
第一行为一个正整数 n( 1 <= n <= 104 )
第二行 n 个整数 a[i](0 <= a[i]<=1000)
输出格式
输出一个整数,表示最少操作次数。
样例输入
5
2 3 1 1 4
样例输出
2
参考代码
#include <stdio.h>
/*
* 判断当前i+a[i]是否可以到达n-1的位置,可以则结束;
* 否则寻找i+1到i+a[i]范围内的最大值(j+a[j]);
* 然后i跳到j
* 重复
* 时间O(n)
*/
int main()
{//FILE* s;//freopen_s(&s,"5.txt", "r", stdin);int n, count = 0;scanf("%d", &n);int a[10001];for (int i = 0; i < n; i++){scanf("%d", &a[i]);}int i = 0, len = a[0], max;while (i<n-1) {max = 0;len = i + a[i];if (len >= n - 1) {count++;break;}for (int j = i + 1; j <= len; j++) {if (j + a[j] > max) {max = j + a[j];i = j;}}count++;}printf("%d", count);
}
相关文章:
4.3 传送门
算法设计与分析 4.3 传送门 题目描述 现在有 n 个传送门,你处在第一个传送门的位置,第 i 个传送门可以将你传送到第 i-a[i] 到第 ia[i] 范围内的任意一个传送门,请问你最少需要几次操作,使得你可以传送到最后一个传送门的位置。 …...
NLP之Bert介绍和简单示例
文章目录 1. Bert 介绍2. 代码示例2.1 代码流程 1. Bert 介绍 2. 代码示例 from transformers import AutoTokenizertokenizer AutoTokenizer.from_pretrained("bert-base-chinese") input_ids tokenizer.encode(欢迎来到Bert世界, return_tensorstf) print(input…...
【Windows】Google和火狐浏览器禁用更新的操作方式
想必很多网民常用的浏览器是Edge,Google,火狐这三种,但是浏览器都有后台自动更新,更新提示会一直显示,要用户去点击才关掉,有点强迫症的用户就会想要把它一直关掉,可每次打开都关不掉࿰…...
关于编程不得不说的事
这些年,互联网爆炸式的发展,促生了无数程序员,也促生了大量 IT培训机构。短短数年间,科班出生的程序员和培训机构出生的程序员呈指数增长。程序员的职业也不再是金饭碗。写了这么多代码,有些感触,所以写下来…...
2.4G合封芯片 XL2422,集成M0核MCU,高性能 低功耗
XL2422芯片是一款高性能低功耗的SOC集成无线收发芯片,集成M0核MCU,工作在2.400~2.483GHz世界通用ISM频段。该芯片集成了射频接收器、射频发射器、频率综合器、GFSK调制器、GFSK解调器等功能模块,并且支持一对多线网和带ACK的通信模式。发射输…...
【QT基础入门 控件篇】QLineEdit 基础、高级和样式表使用详解
一、QLineEdit简介 QLineEdit是一个单行文本编辑器,它可以让用户输入和编辑纯文本,也可以设置一些有用的编辑功能,如撤销和重做、剪切和粘贴、拖放等。QLineEdit: 可以根据不同的回显模式(echoMode)来显示不同的输入内…...
网络安全(网络安全)小白自学
想自学网络安全(黑客技术)首先你得了解什么是网络安全!什么是黑客! 网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、“安全运营”、“安全…...
dupeGuru 清理微信重复文件
本文摘录于:https://www.bilibili.com/video/BV13p4y1G75Y/?spm_id_from333.337.search-card.all.click&vd_source483e5c52353ea59d1a5eadac7737591a只是做学习备份之用,绝无抄袭之意,有疑惑请联系本人! 微信用了七八年,文件…...
华为RS设备状态及接口配置命令
1、查看硬件信息 ①查看序列号 查看整机序列号 display esn display sn ②、查看功率 电源功率 display power 查看光模块功率 display transceiver interface gigabitethernet 1/0/0 verbose ③、查看风扇 display fan ④、查看温度 display temperature all ⑤、查看硬…...
单链表的应用(2)
环形链表的约瑟夫问题 编号为 1 到 n 的 n 个人围成一圈。从编号为 1 的人开始报数,报到 m 的人离开。 下一个人继续从 1 开始报数。 n-1 轮结束以后,只剩下一个人,问最后留下的这个人编号是多少? 利用链表实现 思路࿱…...
【Boost | C++】使用Boost库创建文件夹
#include <boost/filesystem.hpp> #include <iostream> bool CreateDirectory(const std::string &dir_path) {try {if (...
月报总结|Moonbeam 10月份大事一览
万圣节快乐!时间一晃眼,10月已经迈入尾声,也即将迎来寒冷的冬天。但与季节相反,加密产业近期的发展可以说是高潮起伏,热度不断攀升。Moonbeam在10月中也发布了许多重大的更新,如Uniswap V3前段上线、众贷DO…...
Latex安装记录
Title:Latex 基本概念 Tex:是一种具有编译和排版功能的基础语言,相当于C语言。 Latex::LaTex是 Tex 的扩展版本,拥有多种宏包,能实现比 Tex 更多的功能。 TexLive:是一种 Tex 语言的发行版本。 Texstudio: 一种软件相…...
JavaEE-博客系统2(功能设计)
本部分内容:实现博客列表页;web程序问题的分析方法;实现博客详情页; 该部分的代码如下: WebServlet("/blog") public class BlogServlet extends HttpServlet {//Jackson ObjectMapper类(com.fasterxml.jac…...
2023年【高处安装、维护、拆除】免费试题及高处安装、维护、拆除找解析
题库来源:安全生产模拟考试一点通公众号小程序 高处安装、维护、拆除免费试题根据新高处安装、维护、拆除考试大纲要求,安全生产模拟考试一点通将高处安装、维护、拆除模拟考试试题进行汇编,组成一套高处安装、维护、拆除全真模拟考试试题&a…...
antv/g6之交互模式mode
什么是mode 在 AntV G6 中,“mode” 是用于配置图表交互模式的一种属性。通过设置 “mode”,可以控制图表的行为,以满足不同的交互需求。可能在不同的场景需要展现的交互行为不一样。比如查看模式下点击一个点就选中的状态,在编辑…...
基于8086电压表系统仿真系统设计
**单片机设计介绍,1665基于8051单片机与1601LCD的计算器设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 一个基于8086的电压表系统仿真系统可以分为硬件和软件两部分。 硬件部分包括输入设备(例如模拟…...
Docker与微服务实战——基础篇
Docker与微服务实战——基础篇 第一章 Docker 简介1.1 docker 理念1.2 容器与虚拟机比较 第二章 Docker 安装2.1 前提说明2.2 Docker的基本组成2.2.1 镜像(image)2.2.2 容器(container)2.2.3 仓库(repositoryÿ…...
旧手机搭建linuxcentos
centos服务器搭建termux搭建centos旧手机搭建linux服务器ubuntu旧手机搭建网站旧手机搭建linux debian ubuntu centos 旧手机搭建宝塔搭建 32位Linux搭建宝塔 Linuxdeploy搭建宝塔 旧手机搭建服务器有需要的来 包答疑包售后 Linuxdeploy需要root mobile搭建服务器 脚本/工具...
使用pandas处理excel文件【Demo】
一、代码示例 import pandas as pd from pandas import Series,DataFrame from pandasql import sqldf import matplotlib.pyplotidInfos DataFrame(pd.read_excel(home_data.xlsx))print(idInfos.head(2))print(idInfos.dtypes)# print(idInfos[:][姓名]) # 自定义一个函数s…...
终极指南:如何为Evil Icons添加专属品牌图标
终极指南:如何为Evil Icons添加专属品牌图标 【免费下载链接】evil-icons Simple and clean SVG icon pack with the code to support Rails, Sprockets, Node.js, Gulp, Grunt and CDN 项目地址: https://gitcode.com/gh_mirrors/ev/evil-icons Evil Icons是…...
Ubuntu虚拟机桌面黑屏/VNC连接失败?
问题现象 在使用workstation 安装的Ubuntu桌面版时,常遇到两个让人头疼的问题: 现象1:Workstation虚拟机黑屏 在VMware Workstation中安装Ubuntu桌面版,长时间不操作虚拟机界面,屏幕会自动黑屏。虽然SSH还能正常连接&a…...
CSS如何实现不同尺寸的卡片网格_利用Grid跨行跨列设置
Grid卡片跨行跨列需用grid-row: span 2等语法避免线号计算错误;auto-fit需容器有明确宽度;高度不一致时宜用嵌套布局或grid-auto-rows: auto;IE11不支持现代Grid跨行,应降级方案。Grid卡片跨行跨列时,grid-row和grid-c…...
NAS部署New-API本地Ollama秒变公网OpenAI接口
用N1飞牛NAS部署New-API:本地Ollama秒变公网OpenAI接口 核心目标:将本地Ollama模型和各类云端API整合为一个统一的、支持公网访问的OpenAI格式接口。 一、核心解决痛点与方案 1.1 常见痛点 手里既有本地Ollama模型,又有零散的云端API…...
超高效!这款音视频转文字神器,让你告别手动输入!
今天给大家推荐一款非常实用的软件——“Whisper”,它是一款功能强大的音视频转文字工具。这款软件是绿色版,双击打开后,会弹出一个黑色的界面框,请不要关闭它。使用这款软件非常简单。首先,点击【选择文件】按钮&…...
用快马平台快速构建密码强度检测器,十分钟完成网络安全原型验证
今天想和大家分享一个快速验证网络安全功能的实战案例——用InsCode(快马)平台十分钟搭建密码强度检测器。作为经常需要处理用户注册功能的开发者,密码强度验证是每个项目都绕不开的基础安全需求,但传统开发流程中,光是搭环境、写基础代码就可…...
Taskwarrior钩子脚本开发终极指南:如何扩展你的任务管理功能
Taskwarrior钩子脚本开发终极指南:如何扩展你的任务管理功能 【免费下载链接】taskwarrior Taskwarrior - Command line Task Management 项目地址: https://gitcode.com/gh_mirrors/ta/taskwarrior Taskwarrior是一款功能强大的命令行任务管理工具ÿ…...
Cilium v1.17.3深度优化:让容器网络性能提升30%的关键技术解析
Cilium v1.17.3深度优化:让容器网络性能提升30%的关键技术解析 【免费下载链接】cilium eBPF-based Networking, Security, and Observability 项目地址: https://gitcode.com/GitHub_Trending/ci/cilium Cilium是一个基于eBPF的开源容器网络解决方案&#x…...
SAE J1850 CRC-8算法详解:如何在嵌入式系统中高效实现
SAE J1850 CRC-8算法在嵌入式系统中的极致优化实践 在汽车电子和工业控制领域,数据通信的可靠性直接关系到系统安全。SAE J1850标准中定义的CRC-8校验算法因其高效性和可靠性,成为CAN总线等嵌入式通信系统的首选校验方案。不同于通用教程,本文…...
Windows Server 2012系统FileZilla搭建FTP服务器
一、FTP介绍 1.FTP服务器简介 FTP 服务器是基于文件传输协议(File Transfer Protocol)搭建的文件共享服务,主要用于在网络中实现客户端与服务器之间的文件上传、下载及管理。它支持多用户访问、权限控制、目录隔离等功能,广泛应用…...
