1、2008 程式設計比賽Openfind 電梯大王Openfind 電梯大王Copyright 2008 Openfind Information Technology, Inc.比賽規則4 總共有三台電梯,大樓有 1F 18F 共 18個停靠點4 每台電梯最多載 10 個人4 電梯必須完成單趟運送,才能改變方向4 載了人,目標樓層必須停靠4 電梯移動過程中門必須是關的4 電梯運作以秒為單位2Openfind 電梯大王Copyright 2008 Openfind Information Technology, Inc.人員自主意識4 電梯門一但開了,程式必須等全部可以進入的人員進電梯後才能開動
2、,電梯無法主動拒絕特定人進入4 一個人想要往下,但是看到往上的電梯門開了,他是不會搭乘此班電梯的,反之亦然4 同樓層搭乘電梯者採 FIFO 排隊,不會插隊4 電梯停靠樓層後,離開的人先出電梯,搭乘的人才開始進電梯4 如果某樓層沒人要下車的話,電梯有權利選擇過站不停3Openfind 電梯大王Copyright 2008 Openfind Information Technology, Inc.電梯秒數計算4 三電梯一開始為靜止狀態,停在一樓4 電梯開門 2 秒4 電梯關門 2 秒4 電梯移動一層 1 秒4 電梯啟動 1 秒 (靜止於原樓層 )4 電梯煞車 2 秒 (停在下個樓層 )4 人員進
3、/出每人 1 秒4 只有靜止狀態可以開關門4Openfind 電梯大王Copyright 2008 Openfind Information Technology, Inc.人員秒數計算4 每人從按下按鈕開始,到離開電梯的秒數為 m14 每 60 秒 人會憤怒加倍,時間計算加倍,最後結果為 m24 計算分數以所有人 m2 總合為準4 若 m1 = 40 m2 = 404 若 m1 = 63 m2 = 60 + 3x2 = 664 若 m1 = 128 m2 = 60 + 60x2 + 8x4 = 2125Openfind 電梯大王Copyright 2008 Openfind Informat
4、ion Technology, Inc.電梯能量計算4 啟動 花費能量 24 煞車 每秒花費能量 14 移動 每層花費能量 14 開門 花費能量 04 關門 花費能量 06Openfind 電梯大王Copyright 2008 Openfind Information Technology, Inc.計分規則4 一個人從按下電梯鈕開始等電梯,到離開電梯的時間為 m1,由 m1算出 m2。所有人的 m2 相加可得到 M。4 一台電梯啟動、煞車、移動需花費能量,單台花費能量為 n。所有電梯的 n 相加可得到 N。4 七隊伍按照 M 排序 (佔總分 70%), M 最低者得 7 分,第二名 6 分,
5、依此類推。4 七隊伍按照 N 排序 (佔總分 30%), N 最低者得 7 分,第二名 6 分,依此類推。4 輸出結果有 bug,當個 case 零分計算4 所有 10 個 test cases 總得分最高者冠軍7Openfind 電梯大王Copyright 2008 Openfind Information Technology, Inc.Input / Output4 共有 10 個 input files Input01.dat、Input02.dat到 Input10.dat4 你的程式需產生 Output01.dat、Output02.dat到 Output10.dat4 Files
6、 每行代表一秒鐘4 每個 test cases 總行數從 601 10801 不等4 8/30 12:00 準時公佈 10 個 input files4 比賽時間 15 分鐘, 8/30 12:15 前把結果寄給 phantom_.tw (最好 12:10 前跑完程式,留 5 分鐘當作 buffer)82008 程式設計比賽Openfind 電梯大王Programming GuideOpenfind 電梯大王Copyright 2008 Openfind Information Technology, Inc.Input file format (每行代表一秒 )(樓層 新增人數 目標樓層 )*n(樓層 新增人數 目標樓層 )*n(樓層 新增人數 目標樓層 )*n(樓層 新增人數 目標樓層 )*n(樓層 新增人數 目標樓層 )*n(樓層 新增人數 目標樓層 )*nEND10