x米筆試題

(1)24個人做ABC三道菜,滿足如下條件:

  • 每個人至少會做1道
  • 沒有人會做3道
  • 只會做A的是隻會做C的2倍
  • 只會做C的是既會做A又會做B的3倍
  • 會B的人中,只會做B的比其他人少1
  • 不知一個人既會做A和B
      問會做C的有多少人? 

       解析:A∩B >1, 只會C的是A∩B的3倍,只會A的是隻會C的兩倍,而且 只會A +只會 C 要 <24 ,所以 只會A是12,只會C是6,A∩B是2,所以得到下圖:

所以 A∩C + B∩C + 只會B = 4,要把剩下的4人分配到這三個區域,因爲 只會B=A∩B + B∩C -1;所以:

如果只會B = 4 ,則不滿足條件;

如果只會B=3,則不滿足條件;

如果只會B = 2, 則 B ∩ C = 1,A ∩C = 1,所以會C的人爲 6 + 1 + 1 =8

如果 只會B = 1,則 B∩ C = 0, A ∩ C = 3 ,則會C的人爲 6 + 0 + 3 =9.

(2)sizeof問題:union 要和 short 即2 對齊,所以是4

 struct node{
       char c[3];
       short s;
   };
  
  union un{
      char c[3];
      short s;
  };
  

 (3)計算完全二叉樹葉子節點的數量,忘了倒數第二層 囧。。。

  (4)由前序遍歷和中序遍歷構造後續遍歷

(4)消除字符串的空格,如果有多個空格則保留一個

(5)求線段的覆蓋,例如[1,9] 和 [5,10]兩條線段 ,則覆蓋了 10,求n條線段的覆蓋數,

如果多重覆蓋,則計算一次

(6)(a+b)*c*(d-e/f) 轉換成後綴表達式 :ab+c*def/-* ,注意運算優先級和結合行


總結:我了個叉 ,發現自己做題太粗心了,很多會做的看錯題,囧。。。


發佈了23 篇原創文章 · 獲贊 7 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章