问题描述:假设要将一组元件安装在一块线路板上.为此需要设计一个线路板布线方案.各元件的连线
算法设计:对于给定的n个元件,改计一个优先队列式分支限界法,计算最佳布线方案,使布线费用达到最小.
数据输入:由文件input.txt给出输入数据.第1行有1个正整数n(1≤n≤20).接下来的n-1行,每行n-1个数,表示元件i和元件j之间连线数(1≤i<j≤20).
结果输出:将计算的最小布线费川以及相应的最佳布线方案输出到文件output.txt.
算法设计:对于给定的n个元件,改计一个优先队列式分支限界法,计算最佳布线方案,使布线费用达到最小.
数据输入:由文件input.txt给出输入数据.第1行有1个正整数n(1≤n≤20).接下来的n-1行,每行n-1个数,表示元件i和元件j之间连线数(1≤i<j≤20).
结果输出:将计算的最小布线费川以及相应的最佳布线方案输出到文件output.txt.
第1题
算法设计:对任意给定的整数n和k,以及完成任务i需要的时间为ti(i=1,2,...,n).设计一个优先队列式分支限界法,计算完成这n个任务的最佳调度.
数据输入:由文件input.txt给出输入数据.第1行有2个正整数n和k.第2行的n个正整数是完成n个任务需要的时间.
结果输出:将计算的完成全部任务的最早时间输出到文件output.txt.
第2题
算法设计:对于给定的k个待安排的活动,计算使用最少会场的时间表.
数据输入:由文件input.txt给出输入数据.第1行有1个正整数k,表示有k个待安排的活动.接下来的k行中,每行有2个正整数,分别表示k个待安排的活动的开始时间和结束时间.时间以0点开始的分钟计.
结果输出:将计算的最少会场数输出到文件output.txt.
第3题
算法设计:编程找出一个最佳餐巾使用计划.
数据输入:由文件input.txt提供输入数据.文件第1行有6个正整数N、p、m、f、n、s.N是要安排餐巾使用计划的天数,p是每块新餐巾的费用,m是快洗部洗一块餐巾需用天数,f是快洗部洗一块餐巾需要的费用,n是慢洗部洗一块餐巾需用天数,s是慢洗部洗一块餐巾需要的费用.接下来的N行是餐厅在相继的N天里,每天需用的餐巾数.
结果输出:将餐厅在相继的N天里使用餐巾的最小总花费输出到文件output.txt.
第4题
算法设计:对于给定的组卷要求,计算满足要求的组卷方案.
数据输入:由文件input.txt提供输入数据.文件第1行有2个正整数k和n(2≤k≤20,k≤n≤1000),k表示题库中试题类型总数,n表示题库中试题总数.第2行有k个正整数,第i个正整数表示要选出的类型i的题数.这k个数相加就是要选出的总题数m.接下来的n行给出了题库中每个试题的类型信息.每行的第1个正整数p表明该题可以属于p类,接着的p个数是该题所属的类型号.
结果输出:将组卷方案输出到文件output.txt.文件第i行输出“i:”后接类型i的题号.如果有多个满足要求的方案,只要输出1个方案.如果问题无解,则输出“NoSolution!".
第5题
①每次只能在某根柱子的最上面放球.
②在同一根柱子中,任何两个相邻球的编号之和为完全平方数.
试设计一个算法,计算出在n根柱子上最多能放多少个球.例如,在4根柱子上最多可放11个球.
算法设计:对于给定的n,计算在n根柱子上最多能放多少个球.
数据输入:由文件input.txt提供输入数据.文件第1行有I个正整数n,表示柱子数.
结果输出:将n根柱子上最多能放的球数及相应的放置方案输出到文件output.txte文件的第1行是球数.接下来的n行,每行是一根柱子上的球的编号.
第6题
如果采用批处理方案{,2},{3},{4,5},则各作业的完成时间分别为(5,5,10,14,14),各作业的费用分别为(15,10,30,42,56),因此,这个批处理方案总费用是153.
算法设计:对于给定的待批处理的n个作业,计算其总费用最小的批处理方案.
数据输入:由文件input.txt提供输入数据.文件的第1行是待批处理的作业数n,第2行是启动时间S.接下来每行有2个数,分别为单独完成第i个作业所需的时间是1和所需的费用系数.
结果输出:将计算出的最小总费用输出到文件output.txt中.
第7题
装载问题描述如下:有一批共n个集装箱要装上艘载重量为c的轮船,其中集装箱i的重量为wi.找出一种最优装载方案,将轮船尽可能装满,即在装载体积不受限制的情况下,将尽可能重的集装箱装上轮船.
算法设计:对于给定的n个集装箱的重量和轮船的重量,计算最优装载方案.
数据输入:由文件input.txt给出输入数据.第1行有2个正整数n和c,n是集装箱数,c是轮船的载重量.接下来的1行中有n个正整数,表示集装箱的重量.
结果输出:将计算的最大装载重量输出到文件output.txt.
第8题
给定两个长度分别为n和m的序列x[0...n-1|]和y[0...m-1],以及一个长度为p的约束字符串s[0...p-1].带有子串排斥约束的最长公共子序列问题就是要找出x和y的不包含s为其子串的最长公共子序列.例如,如果给定的序列x和y分别为AATGCCTAGGC和CGATCTGGAC.字符串s=TG时,子序列ATCTGGC是x和y的一个无约束的最长公共子序列,而不包含s为其子串的最长公共子序列是ATCGGC.
算法设计:设计一个算法,找出给定序列x和y的不包含s为其子串的最长公共子序列.
数据输入:由文件input.txt提供输入数据.文件的第1行中给出正整数,分别表示给定序列x和y及约束字符串s的长度.接下来的3行分别给出序列x、y和约束字符串s.
结果输出:将计算出的x和y的不包含s为其子串的最长公共子序列的长度输出到文件output.txt中.
第9题
算法设计:给定n及待排列的n个元素.计算出这n个元素的所有不同排列.
数据输入:由文件input.txt提供输入数据.文件的第1行是元素个数n,1≤n≤500.接下来的1行是待排列的n个元素.
结果输出:将计算出的n1个元素的所有不同排列输出到文件output.txt.文件最后1行中
的数是排列总数.
第10题
圆排列问题描述如下:给定n个大小不等的圆,现要将这n个圆排进一个矩形框中,且要求各圆与矩形框的底边相切.圆排列问题要求从n个圆的所有排列中找出有最小长度的圆排列.例如,当n=3,且所给的3个圆的半径分别为1、1、2时,这3个圆的最小长度的圆排列见图5-9,其最小长度为.
算法设计:对于给定的n个圆,计算最小长度圆排列.
数据输入:由文件input.txt提供输入数据.文件的第1行是1个正整数n,表示有n个圆.第2行有n个正数,分别表示n个圆的半径.
结果输出:将计算的最小长度输出到文件output.txt.文件的第1行是最小长度,保留5位小数.
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!