渡口管理问题题目:某汽车轮渡口,过江渡船每次只能载10辆车过江。过江车辆分为客车类和货车类,上船有如下规定:同类车先到先上船,客车先于货车上渡船,且每上4辆客车,才允许上一辆货车;若等待客不足4辆,则以货车代替,若无货车等待则允许客车都上船。根据描述设计一个算法模拟渡口管理。提示:初始化,上渡船汽车数量x,上船客车数y,上船货车数z;讨论在上渡船汽车数量小于10的情形:1若x<4,客车队列又非空,将客车队列的队头汽车出队上渡船。X和Y增1,否则转22、若Y》=4,或客车队列为空队且货车队列非空,将货车队列的队头汽车出队上渡船。Y=0,X和Z增1,否则转33、若货车队列为空队且客车队非空,将客车队列的队头汽车出队上渡船。X和Y增1,Z=0;否则转44、提示相应错误信息并退出程序运行。#include<queue>#include<iostream>#include<sstream>usingnamespacestd;intmain(){queue<string>q_keche,q_huoche;stringinput_data,huoche="huoche",keche="keche";intMax=10;intk=0,h=0;while(cin>>input_data){stringstreamout;if(input_data==huoche){cout<<"huochesizebeforeadding:"<<()<<"";out<<(++h);(huoche+());cout<<()<<"inthequeue,totalhuoche:"<<()<<""<<endl;}elseif(input_data==keche){cout<<"Kechesizebeforeadding:"<<()<<"";out<<(++k);(keche+());cout<<()<<"inthequeue,totalkeche:"<<()<<""<<endl;}elsebreak;}cout<<"2queuesinfo:\nTotalKecheSize:"<<()<<endl<<"ToatlHuocheSize:"<<()<<endl;if(()&&(!()))while(!()){cout<<"huocheSize:"<<()<<"huochewillloadontheship:"<<()<<endl;();--Max;if(Max<=0){cout<<"!!!\n...\n..\n.\n"<<"ing,startloading\n";Max=10;
渡口管理问题 来自淘豆网m.daumloan.com转载请标明出处.