首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
(2012年上半年下午试题四)阅读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。 【说明】 用两台处理机A和B处理n个作业。设A和B处理第i个作业的时间分别为ai和bi。由于各个作业的特点和机器性能的关系,对某些作业,在
(2012年上半年下午试题四)阅读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。 【说明】 用两台处理机A和B处理n个作业。设A和B处理第i个作业的时间分别为ai和bi。由于各个作业的特点和机器性能的关系,对某些作业,在
admin
2018-07-27
61
问题
(2012年上半年下午试题四)阅读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。
【说明】
用两台处理机A和B处理n个作业。设A和B处理第i个作业的时间分别为a
i
和b
i
。由于各个作业的特点和机器性能的关系,对某些作业,在A上处理时间长,而对某些作业,在B上处理时间长。一台处理机在某个时刻只能处理一个作业,而且作业处理是不可中断的,每个作业只能被处理一次。现要找出一个最优调度方案,使得n个作业被这两台处理机处理完毕的时间(所有作业被处理的时间之和)最少。
算法步骤:
(1)确定候选解上界为R短的单台处理机处理所有作业的完成时间m,有
(2)用p(x,y,k)=1表示前k个作业可以在A用时不超过x且在B用时不超过y时间内处理完成,则p(x,y,k)=p(x-ak,y,k-1)||p(x,y-bk,k-1)(||表示逻辑或操作)。
(3)得到最短处理时间为min(max(x,y))。
【C代码】
下面是该算法的C语言实现。
(1)常量和变量说明
n:作业数
m:候选解上界
a:数组,长度为n,记录n个作业在A上的处理时间,下标从0开始
b:数组,长度为n,记录n个作业在B上的处理时间,下标从0开始
k:循环变量
p:三维数组,长度为(m+1)×(m+1)×(n+1)
temp:临时变量
max:最短处理时间
(2)C代码
#include<stdio.h>
int n,m;
int a[60],b[60],p[100][100][60];
void read(){/*输入n、a、b,求出m,代码略*/}
void schedule(){/*求解过程*/
int x,y,k;
for(x=0;x<=m;x++){
for(y=0;y<m;y++){
_____(1)
for(k=1;k<n;k++)
p[x][y][k]=0;
}
}
for(k=1;k<n;k++){
for(x=0;x<=m;x++){
for(y=0;y<=m;y++){
if(x-a[k-1]>=0)______(2);
if(______(3))p[x][y][k]=(p[x][y][k]||p[x][y-b[k-1]][k-1]);
}
}
}
}
void write(){/*确定最优解并输出*/
int X,Y,temp,max=m;
for(x=0;x<=m;x++){
for(y=0;y<=m;y++){
if(_____(4)){
temp=______(5);
if(temp
}
}
}
printf(’’\n%d\n’’,max);
}
void main(){read();schedule();write();}
根据以上说明和C代码,填充C代码中的空(1)~(5)。
选项
答案
(1)p[x][y][0]=1 (2)p[x][y][k]=p[x-a[k-1]][y][k-1] (3)y-b[k-1]>=0 (4)p[x][y][n]==1或p[x][y][n]或p[x][y][n]!=0 (5)(x>=y)?x:y
解析
从schedule()函数的第一个程序段可以看出,该段程序主要进行初始化第一个作业,下标以0开始,即空(1)处应填入p[x][y][0]=1,内层循环里的p[x][y][k]=0用于初始化后面的n-1个作业。第二个程序段是对后面的n-1个作业,确定p(x,y,k)的值。x-a[k-1]>=0的判定条件若成立,则表示第k个作业由机器A处理,完成k一1个作业时机器A花费的时间是x-a[k-1],即空(2)处应填入p[x][y][k]=p[x-a[k-1]][y][k-1]。空(3)处要求填入一判定条件,由其后的执行语句可知,第k个作业由机器B处理,因此空(3)处应填入y-b[k-1]>=0。
write()程序段用于确定最优解并输出结果,即得到最短处理时间min(max(x,y))。空(4)处的判定条件是任务n完成,因此应填入p[x][y][n]==1或其等价形式。空(5)处表达max(x,y),应填入(x>=y)?x:y。
转载请注明原文地址:https://kaotiyun.com/show/v7DZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
从下列的2道试题(试题5、试题6)中任选1道解答。如果解答的试题数超过1道,则题号小的1道解答有效。请认真阅读下列有关于路由器配置的技术说明,根据要求回答问题1至问题5。【说明】菜地市级水电站网络除了和远程子网172.20.0.0/24
请问无线局域网的工作模式有哪几种?当不使用AP时,必须把一组需要互相通信的无线网卡的什么值设为相同?
下面是某路由器的部分配置信息,解释(n)处标有下划线部分的含义。【配置路由器信息】Currentconfiguration:!version11.3noservicepassword
如何根据网络流量选择联网设备,给出所选设备的作用。在我国,目前可供选择大的用户选择的接入方式有哪些,各自的接入速率为多少?
在安装RedhatLinux9.0操作系统的过程中,如果没有选择安装Web服务器,Apache服务器则需要手动安装。现从http://httpd.apache.org网站上免费下载了一个apache-2.2.3RPM格式的软件包,请将以下(1)空缺处
认真阅读下列有关Linux操作系统环境下配置Apache服务器的技术说明,根据要求回答问题1至问题5。【说明】随着电子商务日益普及,A公司建构了一台装有RedhatLinux9.0操作系统的虚拟服务器,为各类客户提供网上架构商务站点的Web服
为了便于用户下载相关资料,特安装一台FTP服务器,其服务器端软件是Serv-U,假如要增加一个名为CIU10009的用户,对应目录为D盘,且要求加密,在图6-4中怎么设置?假如要封闭某用户的账号,请问在图6-4中怎么设置?
为了便于用户下载相关资料,特安装一台FTP服务器,其服务器端软件是Serv-U,假如要增加一个名为CIU10009的用户,对应目录为D盘,且要求加密,在图6-4中怎么设置?假如想将某用户在设咸FTP服务器管理员,其用户名称不变,请问在“Privileg
随机试题
A.120g/LB.110/LC.100g/LD.90~60g/LE.60~30g/L6~14岁小儿诊断贫血的标准是血红蛋白低于
滴虫性阴道炎的传染方式,下列哪项是错误的
背景资料:2015年某业主将一栋大型剧院建筑的拆除任务,发包给无拆除资质的防腐保温劳务公司,由于不了解拆除作业的危险性,操作人员决定先拆混凝土梁,后拆混凝土板。操作时,现场无安全人员在场,也无安全措施。在梁拆至一半时全部楼板塌下,造成多人死亡。事后检查该施
发行可转换公司债券的上市公司涉及()事项时,证券交易所可以根据实际情况或者中国证监会的要求,决定可转换公司债券的停牌与复牌、转股的暂停与恢复事宜。
以下关于公司的特征描述正确的是( )。
表1一2是某一机械制造企业2008年1月至3月企业人工成本支出的统计表。[2008年11月三级真题]请您:指出各项人工成本的列支科目并填写在(丙)栏内。
苏联教育家赞可夫提出的教学原则有()。
材料四:2018年全年粮食种植面积11704万公顷,比上年减少95万公顷。其中,小麦种植面积2427万公顷,减少24万公项;稻谷种植面积3019万公顷,减少56万公顷;玉米种植面积4213万公顷,减少27万公顷;棉花种植面
下列说法中,不正确的是:
Whatdowelearnabouttheman?
最新回复
(
0
)