網際網路程式設計全國大賽

賽前測試題目


PROBLEM 6 Master Mind


Program fileMASTER.EXE
Input fileMASTER.IN
Output fileMASTER.OUT
Execution time30 s
有一個二人遊戲叫做「公牛與母牛」,規則如下﹕二人各選一個四位數,不讓對方知道, 四個數字不可重複。然後二方互相猜對方的數字,被猜的一方必須回答「幾隻公牛、幾隻母牛」。 回答的規則如下﹕

公牛隻數 = 數字、位置皆相同的個數
母牛隻數 = 數字相同、位置不同的個數

例如﹕

1234 和 4321 是 4 隻母牛。
1234 和 5678 是沒有牛。
1234 和 1329 是一隻公牛和二隻母牛。

一方猜到四隻公牛時則獲勝。

請在輸入檔中讀入二行資料,每行各有一個字串,字串由 0 到 9 和大寫 A 到 Z 組成, 字串前後可能有空白,而字串中的字元不重複使用。接下來兩行是另一筆資料, 直到兩個字串皆為 "." 時表示檔案結束。請用公牛和母牛的規則,算出二字串間有多少字元符號、 位置皆相同,有多少字元符號相同而位置不同。依序在輸出檔中印出公牛數和母牛數, 每一筆測試的輸出印在同一行中。

範例﹕

MASTER.IN
     NTUCSIE20YR    
  WHAT2ISYOUR098
 123
 123
  .
 .
MASTER.OUT
 2 6
 3 0