首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
现有A,B两队人要过河,河上有船,但是每次只能乘坐4个人,并且每次乘客满员才能开船,到河对岸后空船返回。由于某种原因,过河时船上不能同时有三个A队人员、一个B队人员或者一个A队人员、三个B队人员的组合(即其他组合是安全的)。请编写程序,用PV操作正确解决A
现有A,B两队人要过河,河上有船,但是每次只能乘坐4个人,并且每次乘客满员才能开船,到河对岸后空船返回。由于某种原因,过河时船上不能同时有三个A队人员、一个B队人员或者一个A队人员、三个B队人员的组合(即其他组合是安全的)。请编写程序,用PV操作正确解决A
admin
2014-07-18
29
问题
现有A,B两队人要过河,河上有船,但是每次只能乘坐4个人,并且每次乘客满员才能开船,到河对岸后空船返回。由于某种原因,过河时船上不能同时有三个A队人员、一个B队人员或者一个A队人员、三个B队人员的组合(即其他组合是安全的)。请编写程序,用PV操作正确解决A,B两队人过河的问题,并说明所设置的信号量及其初值。
选项
答案
int m=4; //信号量,初始值为4 Embark(A){ //登船函数 P(m); A.embark(); } Sail(){ //开船 go(); V(m);V(m);V(m);V(m); } while(true){ if(t==0){ int t=4; //记录已经登船人数 int i:0; //记录A登船人数,4时不允许同类再登船 int j=0; //记录B登船人数,4时不允许同类再登船 } while(team.hasNext()){ ready=team.next(); if(ready= =A){ if(i= =4)continue; //防止3和1的情况 else{ t--: j++; Embark(ready); } } if(i= =3 Il(i= =2&&j= =1))j=4; //防止3和1的情况 if(j= =3 lI(j= =2&&i= =1))i=4; //防止3和1的情况 if(t= =0){ Sail(); break; } } team.relnit(); //整理等候队列 }
解析
转载请注明原文地址:https://kaotiyun.com/show/xaxi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
俄罗斯的私有化进程始于()年。
下列著作被人们称为17世纪物理学、数学的百科全书,并标志着经典力学体系的完成的是()。
根据义和团运动的产生和发展,论述当今史学界对义和团运动的不同看法。(厦门大学2016年历史学基础真题)
评述抗战的三个阶段。
二战后的半个世纪中,资本主义各国经济史上的五个周期阶段。
著名的网络OSI七层模型是由()组织提出来的。
计算机系统采用补码运算是为了()。
在TELNET协议中,用户发送的命令采用TCP传输到服务器,在TCP的数据包中,需要把()符号位置移位,从而使服务器尽快响应命令。
5位二进制定点小数,用补码表示时,最小负数是()。
float型数据通常用IEEE754单精度浮点数格式表示。若编译器将float型变量x分配到一个32位浮点寄存器FRl中,且x=一8.25,则FRl的内容是____。
随机试题
在Windows中,任意一个文件夹下都允许出现多个主文件名相同但扩展名不同的文件。()
Windows的特点包括______。
施工方的项目管理工作主要在施工阶段进行,但也涉及()。
租户和业主之间可能要协商一个()作为计算百分比租金的基础。
中美关系是全球最重要的双边关系之一。中美建交前后曾发生过以下事件:①邓小平访美②中美发布上海《联合公报》③尼克松总统访华④福特总统访华按时间先后顺序排列正确的是()。
关于货币政策,正确的说法是()。
OnaSummereveningitis______tohearthejoyfulsoundoftheshepherd’sflutefloatingacrossthevalley.
Ihopemyteacherwilltakemyrecentillnessinto_____whenjudgingmyexamination.
WhydoesCathylookworried?
Itis(doubt)______whethershewillbeadmittedtograduateschool.
最新回复
(
0
)