leetcode 1024. 视频拼接(dp/贪心)

你将会获得一系列视频片段,这些片段来自于一项持续时长为 T 秒的体育赛事。这些片段可能有所重叠,也可能长度不一。

视频片段 clips[i] 都用区间进行表示:开始于 clips[i][0] 并于 clips[i][1] 结束。我们甚至可以对这些片段自由地再剪辑,例如片段 [0, 7] 可以剪切成 [0, 1] + [1, 3] + [3, 7] 三部分。

我们需要将这些片段进行再剪辑,并将剪辑后的内容拼接成覆盖整个运动过程的片段([0, T])。返回所需片段的最小数目,如果无法完成该任务,则返回 -1 。

示例 1:

输入:clips = [[0,2],[4,6],[8,10],[1,9],[1,5],[5,9]], T = 10
输出:3
解释:
我们选中 [0,2], [8,10], [1,9] 这三个片段。
然后,按下面的方案重制比赛片段:
将 [1,9] 再剪辑为 [1,2] + [2,8] + [8,9] 。
现在我们手上有 [0,2] + [2,8] + [8,10],而这些涵盖了整场比赛 [0, 10]。

dp代码

class Solution {public int videoStitching(int[][] clips, int T) {int[] dp=new int[T+1];Arrays.fill(dp,1000);dp[0]=0;for(int i=1;i<=T;i++){for(int[] c:clips)//遍历可选片段if(i-c[0]>0&&c[1]>=i)//满足c【0】<i<=c[1]才可以选当前片段 dp[i]=Math.min(dp[i],dp[c[0]]+1);
//Math.min(c【0】之前最优解+1(选择当前剪辑时间),当前位置的最优解)}return dp[T]==1000?-1:dp[T];}
}

贪心代码

   public int videoStitching(int[][] clips, int T) {int[] dp=new int[T];for(int[] c:clips){if(c[0]<T)dp[c[0]]= Math.max(dp[c[0]],c[1]);}int pre=0,last=0,res=0;for(int i=0;i<T;i++){last=Math.max(last,dp[i]);if(i==last)return -1;if(i==pre){res++;pre=last;}}return res;}

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

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

相关文章

java实现时钟方法汇总

import java.awt.Dimension; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.Timer; import java.util.TimerTask;import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; //第一种比较…

js中注册标识符流程

注册分为三个阶段&#xff1a;分别是注册阶段&#xff0c;函数处理阶段&#xff0c;变量处理阶段&#xff1b;这三个阶段有先后顺序的。&#xff08;注&#xff1a;这三个阶段的名字没有权威性&#xff0c;是作者为了方便记忆自己起的名字&#xff09; 注册阶段的特征 1.此时不…

jsp论坛网站模版_网站关键词优化怎么做

说到网站关键词优化&#xff0c;大多企业都很陌生&#xff0c;建站公司说的关键词优化头头是道。跟听天书似的&#xff0c;51商务网小编为大家总结的网站优化方法希望可以帮到大家&#xff0c;首先要说的是做网站优化第一点就是要有耐心&#xff0c;如果很长时间没有收录的话&a…

feature功能_利用feature-u V1释放基于功能的JS开发的强大功能

feature功能This article is an introduction to a new JS library called feature-u, that facilitates feature-based development in your React project.本文是对新的JS库(称为feature-u )的介绍&#xff0c;该库促进了React项目中基于功能的开发 。 Note: On 8/14/2018 f…

虚拟实验工场大学计算机实验报告答案,虚拟实验实验报告 - 实验报告 - 书业网.doc...

虚拟实验实验报告 - 实验报告 - 书业网虚拟实验实验报告 - 实验报告 - 书业网篇一&#xff1a;虚拟实验报告第一章 文献综述1.1 丙酮酸脱氢酶概述丙酮酸脱氢酶复合体(Pyruvate Dehydrogenase Complex)催化丙酮酸不可逆的氧化脱羧转化成乙酰辅酶A。该复合体是糖酵解的关键限速酶…

【笔记】一些linux实用函数技巧【原创】

函数返回的是函数的地址 kallsyms_lookup_name() 本文转自张昺华-sky博客园博客&#xff0c;原文链接&#xff1a;http://www.cnblogs.com/sky-heaven/p/5191491.html&#xff0c;如需转载请自行联系原作者

leetcode 845. 数组中的最长山脉

我们把数组 A 中符合下列属性的任意连续子数组 B 称为 “山脉”&#xff1a; B.length > 3 存在 0 < i < B.length - 1 使得 B[0] < B[1] < … B[i-1] < B[i] > B[i1] > … > B[B.length - 1] &#xff08;注意&#xff1a;B 可以是 A 的任意子数组…

【Lintcode】018.Subsets II

题目&#xff1a; Given a list of numbers that may has duplicate numbers, return all possible subsets Notice Each element in a subset must be in non-descending order.The ordering between two subsets is free.The solution set must not contain duplicate subset…

多线程1

1-1 进程 程序是静止的&#xff0c;运行中的程序就是进程。进程的三个特征&#xff1a; 动态性 &#xff1a; 进程是运行中的程序&#xff0c;要动态的占用内存&#xff0c;CPU和网络等资源。独立性 &#xff1a; 进程与进程之间是相关独立的&#xff0c;彼此有自己的独立内存区…

go 列出已经安装的包_Go 安装教程

一、在 Windows 上安装 Go 环境首先在 Go 官网 下载 Windows 系统下的一键安装包。然后双击打开该文件&#xff0c;一直点 Next 就行。注意这里默认是安装到 C 盘&#xff0c;建议不要修改&#xff0c;因为环境变量会自动设置&#xff0c;如果安装到其他盘&#xff0c;那么可能…

【转】spin_lock、spin_lock_irq、spin_lock_irqsave区别

为什么80%的码农都做不了架构师&#xff1f;>>> 转自&#xff1a;http://blog.csdn.net/luckywang1103/article/details/42083613 void spin_lock(spinlock_t *lock);void spin_lock_irq(spinlock_t *lock);void spin_lock_irqsave(spinlock_t *lock, unsigned lon…

七年级计算机上教学计划,初一教学计划模板锦集5篇

初一教学计划模板锦集5篇时光在流逝&#xff0c;从不停歇&#xff0c;我们又将迎来新的教学工作&#xff0c;我们要好好计划今后的教育教学方法。那么一份同事都拍手称赞的教学计划是什么样的呢&#xff1f;以下是小编为大家整理的初一教学计划5篇&#xff0c;仅供参考&#xf…

程序员实际情况_程序员实际上是做什么的?

程序员实际情况What do programmers actually do? What can they be working on?程序员实际上是做什么的&#xff1f; 他们可以做什么&#xff1f; In this video from an Airbnb software engineer, you will learn about what programmers do on a day-to-day basis. She …

leetcode 1365. 有多少小于当前数字的数字(排序)

给你一个数组 nums&#xff0c;对于其中每个元素 nums[i]&#xff0c;请你统计数组中比它小的所有数字的数目。 换而言之&#xff0c;对于每个 nums[i] 你必须计算出有效的 j 的数量&#xff0c;其中 j 满足 j ! i 且 nums[j] < nums[i] 。 以数组形式返回答案。 示例 1&…

spring整合springmvc案例

面试遇到过上机操作&#xff0c;不知道小伙伴们遇到过没。 案例。 1、新建web项目&#xff0c;找到相关的jar包。 转载于:https://www.cnblogs.com/sjzxs/p/11158116.html

我的世界服务器玩家在线时间,将公布上线时间?我的世界中国版网易520前瞻

【17173专稿&#xff0c;转载请注明出处】《我的世界》中国版最近一段时间动作不断。网易CEO丁磊在财报电话会议上公布了《我的世界》手游版会在7月份推出&#xff0c;结合《我的世界》中国版的公告提及&#xff1a;”《我的世界》中国版即将在暑期上线“。如此看来手游版和PC版…

ftpwebrequest 无法加载或初始化请求的服务提供程序_jvm之类加载机制

什么是类加载每个编写的".java"拓展名类文件都存储着需要执行的程序逻辑&#xff0c;这些".java"文件经过Java编译器编译成拓展名为".class"的文件&#xff0c;".class"文件中保存着Java代码经转换后的虚拟机指令&#xff0c;当需要使…

【284天】我爱刷题系列(43)

叨叨两句 身体是灵魂的载体&#xff0c;灵魂是身体的指引&#xff0c;用心维护、驯化你的身体&#xff0c;构建通道&#xff0c;指引它将力量与情绪宣泄在你想做出成绩的领域&#xff0c;神奇的事情就会发生&#xff0c;哈哈。牛客网——java专项练习023 1 SuppressWarnings(“…

基于python渗透测试_Python中基于属性的测试简介

基于python渗透测试by Shashi Kumar Raja由Shashi Kumar Raja Python中基于属性的测试简介 (Intro to property-based testing in Python) In this article we will learn a unique and effective approach to testing called property-based testing. We will use Python , p…

leetcode144. 二叉树的前序遍历(迭代)

给定一个二叉树&#xff0c;返回它的 前序 遍历。示例:输入: [1,null,2,3] 1\2/3 输出: [1,2,3]代码 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val…