2010-10-15 25 views
0

預訂問題 火車上有67個座位。連續只有5個座位,最後一排只有2個座位。一個人一次只能預訂5個座位。如果預約座位的人,照顧他可能會排成一排。如果座位沒有排在一起,那麼這個安排是爲了讓人員組獲得附近的座位。座位轉換。問題

以下類給出

public class seat 
{ 
char name; 
int seat; 
boolean isSeatempty 
} 

寫入功能seatallot(INT noofperson)與打印的每個名稱座椅nuber分配座。

這是我在採訪文件中發現的一個問題。我怎麼去呢?我應該檢查循環中的所有67個座位對象嗎? ESP。最後一行的情況以及在沒有全行的情況下給附近座位的問題。 在此先感謝您的幫助。

+0

你提出這個問題的方式存在的問題是,你沒有展示任何真正的解決它的嘗試,也沒有定義一種方法來確定一個答案是否比另一個更好(並且沒有*右邊*答案)。它應該是一個社區wiki。 – 2010-10-15 11:27:31

回答

2

你對「附近」的定義有什麼想法?一個定義可能在儘可能小的範圍內,但是你可以推測佈局/編號並提出不同的東西。

我會寫兩個幫助函數 - findEmptySeatsInRow(n)在一個完整的行中查找n個位置,然後findNearbySeats(n)查找附近的位置,如果沒有空閒行。我也希望面試官也能提出一些後續問題(也許是關於併發訪問分配功能,或者分配席位的效率 - 儘可能多地使用運輸/會議儘可能多的人的請求),所以即使有人給你提供瞭解決方法,你需要自己想想這個

編輯:也有623 Google matches爲「有67座火車」,所以有很多其他信息已經有關於這個。