2019TOI1214 新手同好會 4. 數位邏輯運算 (DigitalLogic) {試題連結}
問題敘述 阿吉和阿根喜愛投入於硬體的美妙世界,以下為邏輯閘的運作示意圖。舉例來說,AND 邏輯閘若兩個輸入端 A 的訊號為 0,B 的訊號為 0,則輸出 Y 為 0;若輸入 A 為 1,B 為 1, 則輸出 Y 為 1。
圖片來源:https://jibaoviewer.com/project/59632a3d0978122e66d1cc02
這次他們研究出一個電路,有不只兩個輸入。由於人工計算邏輯閘的輸出實在太麻煩了, 請寫一個程式幫他們計算這個電路的輸出。
聰明的佩恩發現了以下的規則,請利用這個規則來協助你寫出程式:
(1) AND 邏輯閘:輸入全為 1 時,輸出為 1,否則輸出 0。
(2) OR 邏輯閘:輸入只要有一個為 1,輸出為 1,否則輸出 0。
(3) XOR 邏輯閘:輸入中有奇數個 1 時,輸出為 1,否則輸出 0。
說明:輸入範例 2 中,時間點 1 的 4 個訊號為 0, 1, 0, 0,根據佩恩的規則,AND 邏輯閘會輸出 0,OR 邏輯閘 會輸出 1,而 XOR 邏輯閘會輸出 1。
評分說明 此題目測資分成兩組,每組測資有多筆測試資料,需答對該組所有測試資料才能獲得該 組分數。各組詳細限制如下: 子任務1 分數40 額外輸入限制 N = 2。子任務2 分數60 無特別限制。
第一行有兩個正整數 N (2<=N<=10) 與 T (1<=T <=10),分別代表每一次輸入訊號的個數, 以及得到訊號的時間點個數。接下來有 N 行,每行有 T 個{0, 1}整數,依序代表每個 輸入端在 T 個時間點的訊號。數字間均以空白隔開。
輸出 T 個時間點,使用 AND、OR、XOR 三種邏輯閘的輸出結果。輸出時,OR 前面要 印一個空白。數字間以一個空白隔開。
2 5 0 1 0 1 0 1 0 1 1 0
AND: 0 0 0 1 0 OR: 1 1 1 1 0 XOR: 1 1 1 0 0
4 7 0 1 0 0 1 0 0 1 1 1 1 1 1 0 0 1 0 1 0 0 0 0 1 1 0 1 0 0
AND: 0 1 0 0 0 0 0 OR: 1 1 1 1 1 1 0 XOR: 1 0 0 0 1 1 0
ID | User | Problem | Subject | Hit | Post Date |
31978 | cody20050918 ... (沐月) | e797 | 409 | 2022-09-03 12:34 |