Leetcode 2464. 有效分割中的最少子数组数目

1.题目基本信息

1.1.题目描述

给定一个整数数组 nums。

如果要将整数数组 nums 拆分为 子数组 后是 有效的,则必须满足:

每个子数组的第一个和最后一个元素的最大公约数 大于 1,且
nums 的每个元素只属于一个子数组。
返回 nums 的 有效 子数组拆分中的 最少 子数组数目。如果不能进行有效的子数组拆分,则返回 -1。

注意:

两个数的 最大公约数 是能整除两个数的最大正整数。
子数组 是数组中连续的非空部分。

1.2.题目地址

https://leetcode.cn/problems/minimum-subarrays-in-a-valid-split/description/

2.解题方法

2.1.解题思路

动态规划

2.2.解题步骤

第一步,状态定义;dp[i]指nums中前i个元素的最小合法子数组数

第二步,状态初始化,前0个的最小组成数为0

第三步,状态转移;dp[i]=min(dp[i],dp[j-1]+1) (其中1<=j<=i并且nums[i-1]与nums[j-1]的最大公约数大于1),状态数组的最后一个值为inf,则返回-1,否则dp[-1]即为最终题解

3.解题代码

Python代码

class Solution:def validSubarraySplit(self, nums: List[int]) -> int:length=len(nums)# 第一步,状态定义;dp[i]指nums中前i个元素的最小合法子数组数dp=[inf]*(length+1)# 第二步,状态初始化,前0个的最小组成数为0dp[0]=0# 第三步,状态转移;dp[i]=min(dp[i],dp[j-1]+1) (其中1<=j<=i并且nums[i-1]与nums[j-1]的最大公约数大于1)for i in range(1,length+1):for j in range(1,i+1):if gcd(nums[i-1],nums[j-1])>1:dp[i]=min(dp[i],dp[j-1]+1)# print(dp)return dp[-1] if dp[-1]!=inf else -1

4.执行结果

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【数据结构】Java的HashMap 和 HashSet 大全笔记,写算法用到的时候翻一下,百度都省了!(实践篇)

本篇会加入个人的所谓鱼式疯言 ❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言 而是理解过并总结出来通俗易懂的大白话, 小编会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的. &#x1f92d;&#x1f92d;&#x1f92d;可能说的不是那么严谨.但小编初心是能让更多人…

ESP32Cam人工智能教学22

ESP32Cam人工智能教学22 在线车牌识别装置 在第十六课《tencent-OCR》中&#xff0c;已经学会了使用腾讯在线识别车牌&#xff0c;但是用的是电脑中的Python程序&#xff0c;读取一张车牌图片内容&#xff0c;然后发送给腾讯服务器进行识别&#xff0c;并获取返回的识别结果。…

基于yolov5滑块识别破解(一)

由于内容较长&#xff0c;将分为两个部分来说明&#xff0c;本文讲解yolov5的部署与训练。 1.YOLOv5部署 云端部署&#xff08;训练&#xff09; 服务器创建 如果自己的显卡算力不是很好的&#xff0c;或者是核显电脑&#xff0c;可以租用算力&#xff0c;价格还行一块钱左右就…

教你一招:在微信小程序中为用户上传的图片添加时间水印

在微信小程序开发过程中&#xff0c;我们常常需要在图片上添加水印&#xff0c;以保护版权或增加个性化元素。本文将为大家介绍如何在微信小程序中为图片添加时间水印&#xff0c;让你的小程序更具特色。 实现步骤&#xff1a; 1. 创建页面结构 在pages目录下创建一个名为upl…

springboot项目今日指数 -- 工程可用性测试

2. 编写测试 在这里我们编写一个测试文件通过用户名查询到用户信息 一. 编写service层 创建SysUserService接口 import com.jixu.stock.pojo.entity.SysUser;public interface SysUserService {public SysUser getUserByName(String username); }创建实现类 import com.ji…

Python酷库之旅-第三方库Pandas(124)

目录 一、用法精讲 551、pandas.DataFrame.notna方法 551-1、语法 551-2、参数 551-3、功能 551-4、返回值 551-5、说明 551-6、用法 551-6-1、数据准备 551-6-2、代码示例 551-6-3、结果输出 552、pandas.DataFrame.notnull方法 552-1、语法 552-2、参数 552-3…

为了不再被事务坑,我读透了Spring的事务传播性。

在之前文章中&#xff0c;我们已经被事务坑了两次&#xff1a; mq发送消息之后&#xff0c;业务代码回滚&#xff0c;导致发了一条中奖消息给用户&#xff01;&#xff01; 我又被Spring的事务坑了&#xff0c;用户兑奖之后&#xff0c;什么东西都没收到&#xff01;&#xf…

【高阶用法】uniapp的i18n/修复/增强/App无重启更换语言

痛点 在i18n多语言模块使用过程中&#xff0c;发现下面几个问题&#xff0c;需要解决 1&#xff09;uni-best框架下&#xff0c;$t功能函数无法实时的切换语言&#xff0c;可能跟使用有关 2&#xff09;uni-best建议的translate方式在vue块外使用太繁琐&#xff0c;希望不用…

10年计算机考研408-计算机网络

【题33】下列选项中&#xff0c;不属于网络体系结构所描述的内容是&#xff08;&#xff09; A.网络的层次 B.每一层使用的协议 C.协议的内部实现细节 D.每一层必须完成的功能 解析&#xff1a; 本题考查的是网络体系结构相关的概念。 图1描述了网络的7层架构以及每一层所要完成…

防火墙详解(一) 网络防火墙简介

原文链接&#xff1a;https://blog.csdn.net/qq_46254436/article/details/105519624 文章目录 定义 与路由器和交换机的区别 发展历史 防火墙安全区域 定义 防火墙主要用于保护一个网络区域免受来自另一个网络区域的网络攻击和网络入侵行为 “防火墙”一词起源于建筑领域&…

Openai gym environment for multi-agent games

题意&#xff1a;用于多智能体游戏的 OpenAI Gym 环境 问题背景&#xff1a; Is it possible to use openais gym environments for multi-agent games? Specifically, I would like to model a card game with four players (agents). The player scoring a turn starts the…

8月份工业机器人产量同比增长20%

近日&#xff0c;国家统计局公布数据显示&#xff0c;8月份&#xff0c;我国工业机器人产量为47947套&#xff0c;较去年同期增长20%&#xff1b;1-8月份&#xff0c;总产量为360592套&#xff0c;较去年同期增长9.9%。 9月14日&#xff0c;国家统计局发布数据显示&#xff0c;…

十大常用加密软件排行榜|2024年好用的加密软件推荐【精选】

在信息安全日益重要的时代&#xff0c;加密软件成为保护个人和企业数据的关键工具。选择合适的加密软件可以有效防止数据泄露和未授权访问。以下是2024年值得推荐的十大加密软件&#xff0c;帮助你找到适合的解决方案。 1. Ping32加密软件 Ping32是一款功能强大的加密软件&…

Spring Boot 学习之路 -- 处理 HTTP 请求

前言 最近因为业务需要&#xff0c;被拉去研究后端的项目&#xff0c;代码基于 Spring Boot&#xff0c;对我来说完全小白&#xff0c;需要重新学习研究…出于个人习惯&#xff0c;会以 Blog 文章的方式做一些记录&#xff0c;文章内容基本来源于「 Spring Boot 从入门到精通&…

【数列求值 / B】

题目 一般做法 #include <bits/stdc.h> using namespace std; const int mod 10000; int f[20190325] {1, 1, 1, 1}; int main() {for(int i 4; i < 20190324; i){f[i] (f[i-1] f[i-2] f[i-3]) % mod;}cout << f[20190324]; } 快速幂矩阵乘法 #includ…

索迪迈车载监控设备的优势有哪些

在当今社会&#xff0c;车载监控设备已经成为保障公共安全与交通管理的重要工具。索迪迈车载监控设备&#xff0c;以其先进的技术和卓越的性能&#xff0c;成为业界的佼佼者。其优势主要体现在以下几个方面&#xff1a; 一、抽拔式硬盘设计 1. 便捷的数据管理 车载监控设备需…

Rk628D 在 RK3588s平台上的驱动移植

硬件平台: W1_AI_RK3588S_V0 处理器: rk3588s kernel版本: Linux version 5.10.110 芯片是:rk628D 目的是:(4k)HDMI输入mipi 输出 1、下载RK628 最新(2024.09)的代码链接: 通过百度网盘分享的文件:RK628 链接:https://pan.baidu.com/s/1zN9yD2FQWAzVUMY1op…

Java面试题大全(全网最全,持续更新)初级(2)

1. 基础语法 1.1. Java 的数据类型有哪些&#xff1f; Java 有两种数据类型&#xff1a; 基本数据类型&#xff08;Primitive Types&#xff09;&#xff1a;包括 byte、short、int、long、float、double、char、boolean。引用数据类型&#xff08;Reference Types&#xff…

环境领域顶刊EST发表!又一次颠覆性突破!

2023年3月21日&#xff0c;普林斯顿大学任智勇教授团队针对最近爆火的ChatGPT和环境研究的交叉在环境领域顶级期刊《Environmental Science & Technology》发表了观点类文章“ChatGPT and Environmental Research”。 任智勇教授中对未来的展望表示&#xff1a; 颠覆性技术…

便携式气象观测仪的工作原理

TH-PQX9】便携式气象观测仪是一种集多种气象要素观测于一体&#xff0c;便于携带和使用的小型气象观测设备。实时监测和记录多种气象要素&#xff0c;包括温度、湿度、风速、风向、气压、太阳辐射、雨量等&#xff0c;满足不同场景下的气象监测需求。采用高精度传感器&#xff…