首页 > 编程语言 >工作安排-od-python

工作安排-od-python

时间:2024-02-03 21:22:44浏览次数:27  
标签:salary 安排 jobs python res od current 工作 time

工作安排
小明每周上班都会拿到自己的工作清单,工作清单内包含n项工作,每项工作都有对应的耗时时长(单位h)和报酬,工作的总报酬为所有已完成工作的报酬之和。那么请你帮小明安排一下工作,保证小明在指定的工作时间内工作收入最大化。

输入描述

输入的第一行为两个正整数T,n。

T代表工作时长(单位h,0<T<100000),n代表工作数量(1 < n< 3000)。

接下来是n行,每行包含两个整数t,w。

t代表该项工作消耗的时长(单位h,t>0),w代表该项工作的报酬。

输出描述

输出小明指定工作时长内工作可获得的最大报酬。

示例一

输入

40 3

20 10

20 20

20 5

输出

30
代码

def max_salary(total_time, current_time, current_salary, index, jobs):
    if current_time >= total_time:
        res.append(current_salary)
        return

    for i in range(index, len(jobs)):
        each_time = jobs[i][0]  # 时间
        each_salary = jobs[i][1]  # 薪水
        max_salary(total_time, current_time + each_time, current_salary + each_salary, i + 1, jobs)


res = []
t, n = map(int, input().split())
jobs = [list(map(int, input().split())) for i in range(n)]
max_salary(t, 0, 0, 0, jobs)
print(res)
print(max(res))

标签:salary,安排,jobs,python,res,od,current,工作,time
From: https://www.cnblogs.com/domm/p/18005232

相关文章

  • CodeForces 1918E ace5 and Task Order
    洛谷传送门CF传送门世纪难题。首先我们考虑先固定\(x\),比如让\(x=a_1\)(重复问\(1\)直到回答为=),那么此时我们可以知道任意一个\(a_i\)和\(a_1\)的大小关系(问一次\(i\)再问一次\(1\)),并且可以知道\(a_i\)的具体值。那么剩下的数被分成了两个集合,一个\(<a_1\)......
  • Python随机波动模型Stochastic volatility,SV随机变分推断SVI分析标普500指数股票价格
    全文链接:https://tecdat.cn/?p=33809原文出处:拓端数据部落公众号随机波动模型(Stochasticvolatilitymodels)经常被客户用来对股票价格随时间的变动性进行建模。波动性(volatility)是随时间的对数收益的标准差。与假设波动性恒定不变不同,随机波动模型具有隐变量参数,可以在每个时刻......
  • 狼羊过河-od-python
    羊、狼、农夫都在岸边,当羊的数量小于狼的数量时,狼会攻击羊,农夫则会损失羊。农夫有一艘容量固定的船,能够承载固定数量的动物。要求求出不损失羊情况下将全部羊和狼运到对岸需要的最小次数。只计算农夫去对岸的次数,回程时农夫不会运送羊和狼。备注:农夫在或农夫离开后羊的数量大......
  • (python)代码学习||2024.2.3||题目是codewars上的【Validate Sudoku with size `NxN`
    题目的要求是写一个Sudoku类,类中要有一个实例函数判断传给对象的二维数组是否符合数独规则题目链接:https://www.codewars.com/kata/540afbe2dc9f615d5e000425/python下面是写完题后看到的别人的解决方法fromitertoolsimportchainclassSudoku(object):def__init__......
  • VSCode项目中安装npm依赖包失败解决方案
    解决VScode提示:无法将“node”“npm”项识别为cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。此方法用于解决使用vscode打开项目文件后,使用npminstall命令安装node_modules依赖包失败的问题方法一:创建新终端窗口;......
  • Distribute tensorflow model training on a kubernetes cluster
    [ERRRO:AttributeError:module'tensorflow'hasnoattribute'app'](base)maye@maye-Inspiron-5547:~/github_repository/tensorflow_ecosystem/distribution_strategy$kubectldescribepoddist-strat-example-worker-0-w6rsbName:......
  • nodejs的下载安装
    8、nodejs的作用在vscode打开项目后,由于项目依附于我们的npm,我们需要将npm中的依赖下载下来,npm又依附于nodejs,故需要下载nodejs。下载node并安装:https://nodejs.org/dist/v12.14.0/nodev12.14.0-x64.msi; 9、设置npm镜像(同设置maven) ......
  • leedcode 二叉树的中序遍历
    自己写的classSolution:def__init__(self):self.res_list=list()definorderTraversal(self,root):ifroot:ifroot==None:returnelse:self.inorderTraversal(root.left)......
  • <template #default="{ node,data }">
    <template><el-dialogv-model="dialogVisible":title="title":width="width":close-on-click-modal="false":close-on-press-escape="false"@close="dialogClose"......
  • 设计一个学生管理系统(Python类的使用案例)
    设计一个学生管理系统设计学生类(Student)属性:姓名(name)、学号(student_id)、年龄(age)、成绩(grades) 设计学生管理系统类(StudentManagementSystem)属性:学生列表(students)  classStudent:def__init__(self,name,id,age,grades):self.name=namesel......