[leetcode 1235] [动态规划]

news/发布时间2024/5/18 12:19:07

简单题

  1. 线段树可做
    2.动态规划可做

import java.util.Arrays;
import java.util.Comparator;class Solution {int n;int[][] lcs;public static void main(String[] args) {Solution solution = new Solution();int ans = solution.jobScheduling(new int[]{1,2,3,3}, new int[]{3,4,5,6}, new int[]{50,10,40,70});System.out.println(ans);}public int jobScheduling(int[] startTime, int[] endTime, int[] profit) {n = startTime.length;int[][] arr = new int[n][3];for (int i = 0; i < n; i++) {arr[i] = new int[]{startTime[i], endTime[i], profit[i]};}Arrays.sort(arr, new Comparator<int[]>() {@Overridepublic int compare(int[] o1, int[] o2) {return o1[1] - o2[1];}});//lcs = new int[n][2];lcs[0][0] = 0;lcs[0][1] = arr[0][2];//for (int i = 1; i < n; i++) {lcs[i][0] = Math.max(lcs[i - 1][0], lcs[i-1][1]);int b = arr[i][0];int p = upperBound(arr, 0, i, b);if (p == 0) {// 不存在比b更小的数lcs[i][1] = arr[i][2];}else {// 存在比b更小的数lcs[i][1] = Math.max(lcs[p-1][0], lcs[p-1][1]) + arr[i][2];}}return Math.max(lcs[n-1][0], lcs[n-1][1]);}/*** 第一个大于target的数,*      如果没有找到, 那么返回to这个位置*      如果找到了,那么返回在数组中的位置** @param arr* @param from* @param to* @param target* @return*/public int upperBound(int[][] arr, int from, int to, int target) {int l = from;int r = to;while( l < r) {int mid = (l + r) /2 ;if ( arr[mid][1] <= target) {l =  mid + 1;}else {r = mid ;}}return l;}
}

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

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

相关文章

[openbve站]oldhelps openbve站v0.0.2推出上线公测

[openbve站]oldhelps openbve站v0.0.2推出上线公测 目录[openbve站]oldhelps openbve站v0.0.2推出上线公测1.归档页面增加图片显示 今天(5.4)起,openbve站上线第二个版本。此次更新的主要内容: 1.归档页面增加图片显示

python教程3.3:字符和编码

1、二进制 计算机只能存储和识别二进制,但是人类常用的字母、数字、汉字怎么用计算机存储和识别呢? 人类强行约定一个对应表,把数字、字母和数字进行对应上,这样就可以用二进制表示字母和数字了。 2、ASCII编码 ASCII是美国于1967年创建,只有127个字母和数字(后面扩展128个…

团队作业3--需求改进系统设计

这个作业属于哪个课程 软件工程这个作业要求在哪里 团队作业3--需求改进&系统设计这个作业的目标 明确需求、改进原型、系统设计和测试需求团队Gitee仓库链接 Gitee鏈接团队成员:姓名 学号蔡梓严(队长) 3122004686刘睿 3122004697吴炳辉 3122004709陈翼 3122006207林诗芸…

DNF pvf 各版本客户端下载大全

整个客户端,pvf文件占1600多个G全部版本文件获取: https://githubs.xyz/y16.html60版本,70版本,86,86版本,90等全部都有纯净月魂86版本月魂的初版,没有任何修改。 怪物难度强度大。也是我最推荐的版本。朝暮,追忆,原仿官都有。 算了,我摊牌了,基本上什么版本都有。6…

python包:torchsummary

利用torchsummary观察每一层的情况1)按照方式 pip install torchsummary 2)

16.5k star,开源推荐,go语言写的堡垒机

16.5k star,开源推荐,go语言写的堡垒机 原创 大侠之运维 大侠之运维 2024-05-04 00:02 江西teleport是一款go语言写的堡垒机,目前已经开源,可以自己部署体验下,teleport适合主机、kubernetes、数据库、RDP以及web服务。传送门:https://github.com/gravitational/teleport…