POJ 2987 Firing 已翻译

本文探讨了一个关于解雇员工的复杂算法问题。目标是最小化解雇员工的数量以达到最大的经济收益。输入包括员工数量及其关系,输出则是最优解雇方案及预期利润。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

描述


你终于疯了“你世界上最愚蠢的”员工,并决定做一些射击。你现在太疯狂地回答“你不认为这是一个更愚蠢的决定,签署他们吗?”,但仍然平静,足以考虑潜在的利润和损失,从他们的很大一部分虽然摆脱员工会节省你的工资和奖金开支,在合同期满前终止合同费用你资金赔偿。如果你解雇一个雇员,你还要解雇所有的下属和他的下属和下属的下属的下属...一个雇员可以在几个部门服务,他的(直接或间接)下属在一个部门可能是他的老板在另一个部。你的射击计划现在准备好了吗?

输入


输入在同一行上以两个整数n(0 <n≤5000)和m(0≤m≤60000)开始。接下来是n + m行。它们的前n行给出了第i个雇员个人bi(| bi |≤107,1≤i≤n)的净利润/损失。剩余的m行每个包含两个整数i和j(1≤i,j≤n),这意味着第i个雇员具有第j个雇员作为他的直接下属。

输出


输出由单个空格分隔的两个整数:要触发的最小员工数以实现最大利润和最大利润。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值