百度面試題

2021-04-12 12:44:56 字數 1863 閱讀 5332

有一根27厘公尺的細木桿,在第3厘公尺、7厘公尺、11厘公尺、17厘公尺、23厘公尺這五個位置上各有乙隻螞蟻。木桿很細,不能同時通過乙隻螞蟻。開始時,螞蟻的頭朝左還是朝右是任意的,它們只會朝前走或調頭,但不會後退。當任意兩隻螞蟻碰頭時,兩隻螞蟻會同時調頭朝反方向走。假設螞蟻們每秒鐘可以走一厘公尺的距離。編寫程式,求所有螞蟻都離開木桿的最小時間和最大時間。

解法一:

最小11,最大就....32種走法,用程式模擬算比較簡單,如果找演算法規律.....就.....

正解!每個螞蟻物件維護自己的幾個屬性:

time 在木頭上走的時間

pos  在木頭上的座標

orientation 方向(-1 or 1)

recursion:

1 所有螞蟻走一步,向量pos加1,time加1

2 檢查是否有螞蟻在同一座標上,如果有,將它們掉頭

3 檢查是否有螞蟻的座標在[0,27]以外的外圍,如果有,記下它的time值,然後這個螞蟻出局

4 repeat 1-3,直到所有螞蟻出局。它們time的最大值就是乙個解(一共有32個情況,32種解)。

解法二:

class funnyant

public void setdirection(int direction)

public void move() else

}public void switchdirection()

public int getx()

public string getdirection()

}public static void main(string args) ;

ant ant = null;

// list all conditions

for (byte i = 0; i < 32; i++)

int timer = 0;

while (v.size() > 0)

}timer++;

// check whether there is collide

ant = null;

for (int l = 0, lastx = -1; l < v.size(); l++)

lastx = ant.getx();}}

timerv.addelement(new integer(timer));

v.removeallelements();

}int min = ((integer) (timerv.elementat(0))).intvalue(), max = ((integer) (timerv.elementat(0))).intvalue();

integer value = null;

for (int i = 0; i < timerv.size(); i++)

if (x > max)

}system.out.println("max :" + max + " min :" + min);}}

解法三:

//是否所有螞蟻下桿,i為螞蟻隻數

bool isout(int *p,int i)

int main(void)

;unsigned short int i=1;

//螞蟻開始運動方向最多32(2的5次方)種

for(count;count<32;count++)

}//看相鄰兩隻螞蟻是否碰頭,碰頭調轉方向

for(int s=0;s<4;s++)

}//是否所有螞蟻下桿

if(isout(pos,5))}}

return 0;

}來自 http://community.csdn.net/expert/topic/5141/5141367.xml?temp=.8952143

本人整理

百度面試題

一 選擇題 15分 共10題 1.任何乙個基於 比較 的內部排序的演算法,若對6個元素進行排序,則在最壞情況下所需的比較次數至少為 a 10 b 11 c 21 d 36 2.關係模型有三類完整性約束,定義外來鍵實現的是 完整性.a.實體完整性 b.參照完整性 c.使用者定義的完整性 d.實體完整性...

百度面試題

1.乙個int陣列,裡面資料無任何限制,要求求出所有這樣的數a i 其左邊的數都小於等於它,右邊的數都大於等於它。能否只用乙個額外陣列和少量其它空間實現。2.乙個檔案,內含一千萬行字串,每個字串在1k以內,要求找出所有相反的串對,如abc和cba。當時怎麼想的忘記了,現在重新思考一下,檔案的大小上限...

百度面試題

第一題 編寫乙個方法 求乙個字串的位元組長度第二題 如何控制alert中的換行第三題 解釋document.getelementbyid elementid style.fontsize 1.5em em是個相對單位。第四題將乙個類似圖中的效果分離成css和html 第五題按照格式 x年xx月xx日...