回分類題庫
d170: 2010 程式達人 A - 選舉名冊問題
出處:

Difficulity : N/A
Accepted : 13 Times | Submit :52 Times | Clicks : 1536
Accepted : 9 Users | Submit : 11 Users | Accepted rate : 82%
Time Limit :3000 ms | Memory Limit : 64000 KBytes
題目加入時間 : 2010-05-16 18:34

Content :

凱弟是研究民意地區劃分的專家,善於處理選舉人的票數需求,讓最"適當"的參選者能獲得他想要的位置。這些地區內的投票者資訊都被分裝成一本一本冊子記錄,並藏在凱弟最自豪的資訊管理室中,由其下愛徒搭砰保管。而當凱弟在研究地區劃分時,常常需要一次借很多的冊子進行交叉比對,以研究出最精細的地區規劃制度,這使得搭碰在整理記錄冊時會碰到不少麻煩,地區的排序以及冊子編號的排序總是弄得他頭很大,因此他四處詢問希望能設計出符合他需求的程式,讓他能輕鬆整理這些冊子。

當冊子被借出並歸還時,在放入架子上前必須先將欲歸還的本子和架上的書做排序,依照region的ASCII大小做排序,越小的放置在越前面,當region一樣時,則比較冊子number的大小,如同region排序一樣,越小的放在越前面。

Input :

首先,冊子的資料會列出來,然而這些資料是未排序過的,每一行記錄一本冊子的資訊,冊子資訊記錄方式如下:
@number@ by region
每個number都是獨立的、不重複的。所有記錄冊的資訊列完後,會以一行"END"做為結尾。
緊接著則是記錄凱弟借出以及歸還的指令和搭砰想要整理記錄冊的指令,每個指令用一行表示,所有的指令如下:
        BORROW @number@
        RETURN @number@
        SHELVE
動作指令的結束也與記錄冊列表結束相同,使用"END"做結尾。其中BORROW和RETURN分別代表借出和歸還number這本書。SHELVE的指令請參閱範例輸出。每本冊子的number由8個數字組成,而region則不超過15個字。

Output :

當SHELVE指令出現時,你的程式必須印出一連串的冊子擺放方式,以告知搭砰要如何排序這些被借走之後歸還的記錄冊,一本書一行,格式如下:
1.     Put @number1@ after @number2@
2.     Put @number@ first
第一種格式表示將number1這本書放置到number2這本書之後,而第二種格式顯而易見是將number這本書放在書架上的第一本。注意:排序後在越前面的書的指令要越先執行。當記錄冊都放置完成後,則輸出一行"END",告訴搭砰書本放置方式已經完成囉!

Sample Input :

@11017011@ by Aidnap
@74802103@ by Naughhuan
@20354401@ by Ennao
END
BORROW @20354401@
BORROW @74802103@
RETURN @74802103@
RETURN @20354401@
SHELVE
END

Sample Output :

Put @20354401@ after @11017011@
Put @74802103@ after @20354401@
END

Hint :

解題率: 0

Author :


  Solve it!   Status Forum (0)

C++
C
JAVA
39314. king_of_laba (8 ms , 274KB)
37201. cp99703032 (8 ms , 278KB)
37189. nothinglo (8 ms , 434KB)
22198. henryokc (12 ms , 426KB)
40008. cp99303052 (14 ms , 504KB)
55839. ag100 (4 ms , 288KB)
55840. ag100 (6 ms , 274KB)
55838. ag100 (6 ms , 272KB)
55837. ag100 (6 ms , 288KB)
86973. nwgs524513cja (214 ms , 3628KB)
86972. nwgs524513cja (232 ms , 7202KB)

執行時間會受很多因素影響因此僅供參考,主機等級請看這裡