1.4-数组-209. 长度最小的子数组★★

209. 长度最小的子数组 ★★

  力扣题目链接,给定一个含有 n 个正整数的数组和一个正整数 target 。找出该数组中满足其总和大于等于 target 的长度最小的 连续子数组 [numsl, numsl+1, ..., numsr-1, numsr] ,并返回其长度**。**如果不存在符合条件的子数组,返回 0

  • 1 <= target <= 109
  • 1 <= nums.length <= 105
  • 1 <= nums[i] <= 105

示例 1:

输入:target = 7, nums = [2,3,1,2,4,3]
输出:2
解释:子数组 [4,3] 是该条件下的长度最小的子数组。

示例 2:

输入:target = 4, nums = [1,4,4]
输出:1

示例 3:

输入:target = 11, nums = [1,1,1,1,1,1,1,1]
输出:0

本地练习

pub struct Solution;

impl Solution {
    pub fn min_sub_array_len(target: i32, nums: Vec<i32>) -> i32 {
        
    }
}

fn main() {
    let res = [(7, vec![2, 3, 1, 2, 4, 3]), (4, vec![1, 4, 4]), (11, vec![1, 1, 1, 1, 1, 1, 1, 1])]
        .iter().map(|x| Solution::min_sub_array_len(x.0, x.1.to_vec())).collect::<Vec<_>>();
    println!("{:?}: {:?}", vec![2, 1, 0] == res, res);
}

Rust答案

impl Solution {
    pub fn min_sub_array_len(target: i32, nums: Vec<i32>) -> i32 {
        let (mut sum, mut i, mut result) = (0, 0, i32::MAX);

        for (pos, val) in nums.iter().enumerate() {
            sum += val;
            while sum >= target {
                result = result.min((pos - i + 1) as i32);
                sum -= nums[i];
                i += 1;
            }
        }
        if result == i32::MAX {
            return 0;
        }
        result
    }
}
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
牙科就诊管理系统利用当下成熟完善的SSM框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的Mysql数据库进行程序开发。实现了用户在线查看数据。管理员管理病例管理、字典管理、公告管理、药单管理、药品管理、药品收藏管理、药品评价管理、药品订单管理、牙医管理、牙医收藏管理、牙医评价管理、牙医挂号管理、用户管理、管理员管理等功能。牙科就诊管理系统的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。可以说该程序在帮助管理者高效率地处理工作事务的同时,也实现了数据信息的整体化,规范化与自动化。 管理员在后台主要管理病例管理、字典管理、公告管理、药单管理、药品管理、药品收藏管理、药品评价管理、药品订单管理、牙医管理、牙医收藏管理、牙医评价管理、牙医挂号管理、用户管理、管理员管理等。 牙医列表页面,此页面提供给管理员的功能有:查看牙医、新增牙医、修改牙医、删除牙医等。公告信息管理页面提供的功能操作有:新增公告,修改公告,删除公告操作。公告类型管理页面显示所有公告类型,在此页面既可以让管理员添加新的公告信息类型,也能对已有的公告类型信息执行编辑更新,失效的公告类型信息也能让管理员快速删除。药品管理页面,此页面提供给管理员的功能有:新增药品,修改药品,删除药品。药品类型管理页面,此页面提供给管理员的功能有:新增药品类型,修改药品类型,删除药品类型。
### 回答1: 要下载pmml-lightgbm-example-executable-1.4-snapshot.jar,您可以按照以下步骤进行操作: 第一步,打开任意一个浏览器,例如Google Chrome,Mozilla Firefox或者Microsoft Edge。 第二步,使用浏览器搜索引擎,输入“pmml-lightgbm-example-executable-1.4-snapshot.jar 下载”进行搜索。 第三步,浏览搜索结果,并找到可信赖的下载源。可以尝试查找官方网站或相关开发者社区。 第四步,进入下载源的网站,找到相关的下载链接或按钮。 第五步,点击下载链接或按钮,开始下载pmml-lightgbm-example-executable-1.4-snapshot.jar。 第六步,等待下载完成。下载速度取决于您的互联网连接速度以及文件的大小。 第七步,下载完成后,在您的计算机上找到并保存该文件。可以选择在默认下载文件夹中保存,或者选择自定义的文件夹。 通过以上步骤,您可以成功下载pmml-lightgbm-example-executable-1.4-snapshot.jar。请注意确保您从可信赖的源获取文件,以防止下载到恶意软件或病毒。 ### 回答2: 要下载pmml-lightgbm-example-executable-1.4-snapshot.jar,你可以按照以下步骤进行操作: 1. 打开你的浏览器,并搜索"pmml-lightgbm-example-executable-1.4-snapshot.jar"。 2. 在搜索结果中找到可靠的下载来源,如GitHub、SourceForge等。 3. 点击下载链接,通常会有一个下载按钮或链接,点击它。 4. 你的浏览器会开始下载这个文件。你可以选择保存文件的位置或使用默认下载位置。 5. 下载完成后,在你选择的下载位置找到.jar文件。你可以使用文件管理器来导航到该位置。 6. 双击这个.jar文件,它将在你的计算机上自动运行/安装。 7. 如果有任何提示或说明,请按照该文件的指示进行。 这样,你就成功下载了pmml-lightgbm-example-executable-1.4-snapshot.jar文件。请注意,根据你下载文件的来源,步骤可能会有所不同。务必使用可靠且合法的来源来下载文件,以确保文件的安全性和完整性。 ### 回答3: 要下载pmml-lightgbm-example-executable-1.4-snapshot.jar,可以按以下步骤进行操作: 1. 打开网页浏览器,前往pmml-lightgbm-example在GitHub的页面。 2. 在页面上找到并点击“Download”按钮,通常位于页面的右上方。 3. 选择合适的下载选项,例如选择下载最新版本的jar文件。 4. 保存jar文件到你想要存放的目录中,可以选择默认的下载目录或者选择特定的文件夹。 5. 下载完成后,找到保存的jar文件。 现在,你已经成功地下载了pmml-lightgbm-example-executable-1.4-snapshot.jar文件,并可以在你的计算机中使用它了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值