试设计一个解最大团问题的迭代回溯算法.
(1)给定n个任务的集合S={1,2,...,n};
(2)完成任务i需要ti(1≤i≤n)时间;
(3)任务i的截止时间di(1≤i≤n),明要求任务i在时间di之前结束;
(4)任务i的误时惩罚wi(1≤i≤n),即任务i末在时间di之前结束,将招致wi的惩罚;若按时完成,则无惩罚.
任务安排问题要求确定S的一个时间表(最优时间表)使得总误时惩罚达到最小.
算法设计:对于给定的n个任务,计算总误时惩罚最小的最优时间表.
数据输入:由文件input.txt给出输入数据.第1行是1个正整数n,表示任务数.接下来的n行中,每行有3个正整数a、b、c,表示完成相应任务需要时间a,截止时间为b,误时惩罚值为c.
结果输出:将计算的总误时惩罚输出到文件output.txt.
算法所需的计算时间为Q(n2).显然当AB=C时,算法Product(A,B,C,n)返回true.试证明当AB≠C时,算法返回值为false的概率至少为1/2(考虑矩阵AB-C并证明当AB≠C时,将该矩阵各行相加或相减最终得到的行向量至少有一半是非零向量).
算法设计:对于给定的实验和仪器配置情况,找出净收益最大的实验计划.
数据输入:由文件input.txt提供输入数据.文件第1行有两个正整数m和n,m是实验数,n是仪器数.接下来的m行,每行是一个实验的有关数据.第一个数是赞助商同意支付该实验的费用,然后是该实验需要用到的若干仪器的编号.最后一行的n个数是配置每个仪器的费用.
结果输出:将最佳实验方案输出到文件output.txt.第1行是实验编号,第2行是仪器编号,最后一行是净收益.
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!