leetcode 1871. 跳跃游戏 VII

news/2025/1/8 4:47:22 标签: leetcode, 算法, c++, 数据结构

题目如下
在这里插入图片描述
数据范围
在这里插入图片描述

显然n平方的时间复杂度会报超时错误,所以这道题不宜暴力。
这道题可以这么思考:
	设字符串为s minjump为min maxjump为max
	当s[i] = '0' 时考虑 当 i ∈[i - max,i - min](其中i - max > 0)时可达
	所以这道题实际上就转变为判断当在[i - max,i - min]是否有'0'
	故我们可以使用前缀和来辅助同时用另一个数组来存储各个位置可达信息。

通过代码

class Solution {
public:
 
bool canReach(string s, int minJump, int maxJump) {
    int n = s.size();
    vector<int> pre(n);
    vector<int> ans(n);
    int left ,right;
    ans[0] = 1;
    for(int i = 0;i < minJump;i++) {
        pre[i] = 1;
    }
    for(int i = minJump;i < n;i++) {
        left = (i - maxJump >= 0)?(i - maxJump):0;
        right = i - minJump;
        if(s[i] == '0') {
            if(pre[right] - ((left - 1 >= 0)?pre[left - 1]:0) > 0) {
                ans[i] = 1;
            }else {
                ans[i] = 0;
            }
            
        }
        pre[i] = pre[i - 1] + ans[i];
    }

    return ans[n - 1];
}
};

在这里插入图片描述


http://www.niftyadmin.cn/n/5815662.html

相关文章

时空遥感影像智能解译软件(基础版)

一、时空遥感影像智能解译软件&#xff08;基础版&#xff09;简概 “时空遥感影像智能解译软件&#xff08;基础版&#xff09;”&#xff0c;该软件基于Python高级编程语言与PyQt5界面设计框架开发&#xff0c;依赖于sys、os系统库以及OpenCV、GDAL、Numpy、Math、Random、Ma…

【数据挖掘】深度高斯过程

深度高斯过程&#xff08;Deep Gaussian Process, DGP&#xff09;是一种结合高斯过程&#xff08;Gaussian Process, GP&#xff09;和深度学习的模型&#xff0c;旨在将高斯过程的非参数灵活性与深度模型的分层特征学习能力相结合。它可以看作是高斯过程的深度扩展&#xff0…

使用ros_readbagfile脚本提取感兴趣的话题

使用ros_readbagfile脚本轻松地提取感兴趣的话题 来源&#xff1a;这部分教程是根据本文件中首次发表的指引改编的,Python脚本来自&#xff1a;ros_readbag.py。 注意&#xff1a;您可以杀死任何正在运行的进程。比如说连roscore都不需要运行。 下载并安装ros_readbag.py&…

人工智能知识分享第八天-机器学习_泰坦尼克生存预估线性回归和决策树回归对比案例

泰坦尼克生存预估案例 import pandas as pd from sklearn.model_selection import train_test_split from sklearn.tree import DecisionTreeClassifier from sklearn.metrics import classification_report import matplotlib.pyplot as plt from sklearn.tree import plot_t…

Java NIO、AIO分析

好的&#xff0c;下面将对Java中的**NIO&#xff08;Non-blocking IO&#xff09;和AIO&#xff08;Asynchronous IO&#xff09;**进行更深入的分析&#xff0c;重点探讨它们的特点和具体的应用场景。 一、Java NIO&#xff08;Non-blocking IO&#xff09;深入分析 1. 主要…

ESP32-C3 AT WiFi AP 启 TCP Server 被动接收模式 + BLE 共存

TCP 被动接收模式&#xff0c;每次发的数据会先存到缓冲区&#xff0c;参见&#xff1a;ATCIPRECVTYPE 指令说明。 即每包数据不会实时报告 IPD 接收情况&#xff0c;如果需要查询缓冲区的数据&#xff0c;先用 ATCIPRECVLEN? 指令查询被动接收模式下套接字数据的长度 。获取…

【一句话经验】uview-plus文档方便看

uview-plus文档最近更新了&#xff0c;添加了小程序广告。支持作者固然是需要的&#xff0c;每次都点确实有点烦人了。 本想用油猴的发现360极速下不知道怎么不好使了。于是换一种方式 F12后在控制台输入以下口令解锁&#xff1a; document.querySelectorAll(.el-dialog__w…

Kubernetes Gateway API-4-TCPRoute和GRPCRoute

1 TCPRoute 目前 TCP routing 还处于实验阶段。 Gateway API 被设计为与多个协议一起工作&#xff0c;TCPRoute 就是这样一个允许管理TCP流量的路由。 在这个例子中&#xff0c;我们有一个 Gateway 资源和两个 TCPRoute 资源&#xff0c;它们按照以下规则分配流量&#xff1…