2017级面向对象程序设计 作业三
Deadline:2018-05-13 22:00pm
題目升級
一棟10層的大樓(樓層編號1-10),設3臺無限載重的電梯,初始時電梯停在1層。其中:1號電梯只能停留在奇數層,2號電梯可以各層都停留,3號電梯只停留在第1層和偶數層。電梯移動1層的耗時為1,在某一層停靠的耗時為1(時間初始為0)。電梯不允許未仆先知,必須在時間到了之后才能開始響應這條請求。
為了使得電梯完成接送所有乘客的運行時間最短,請你編寫一個程序來進行電梯調度。
輸入
輸入文件的文件名為 input.txt ,其中:第一行為一個非負整數N,代表乘客的請求數量;接下來N行,描述了這N個請求的信息,格式為請求時刻 起始樓層數 去往樓層。
保證請求時刻是單調不減的。
/*input example*/
2
1 1 2
1 2 1 輸出
輸出調度決策,3部電梯分別輸出到3個文件。文件名分別為output1.txt、output2.txt和output3.txt,其中:每一行的輸出格式為時刻 停靠樓層。(初始時停在1層的狀態不輸出)
注意:“時刻”指的是在某層樓停靠的時刻,且不算入在該層的停靠時間。
/*onput1.txt為空*//*onput2 example*/
3 2/*onput3 example*/
2 2
4 1 博客要求
- 選擇C或C++代碼實現,另一種用文字描述或畫圖解釋程序應如何實現。
- 描述整個過程中碰到的所有困難以及解決的過程
- 在博客開頭貼出項目的github地址
測試說明
本次作業依然采用互測形式。代碼必須遵循一定的代碼規范,要有注釋,可讀性盡可能好。
提交到Github上的項目需新建一個名字為3Elevators-scheduling的文件夾,在里面上傳本次的作業代碼。
一個示例組織目錄如下所示(僅為示例,命名、文件數量等未必需要遵守):
/ 3Elevators-scheduling/ main.cpp/ elevator.cpp/ elevator.h .../ BIN/ elevator.exe/ input.txt/ output.txt/ Lib.dll (exe運行需要的動態鏈接庫文件,可以沒有)
轉載于:https://www.cnblogs.com/easteast/p/8999626.html
總結
以上是生活随笔為你收集整理的2017级面向对象程序设计 作业三的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 御水.20180506
- 下一篇: 6s换屏幕多少钱啊?