題目連結:
題目大意:
輸入有九列,每列給定九個數字(每個數字為數字 0 ~ 9 其中一者。彼此之間沒有空格,且數字不會重複),代表數獨的版面的其中一列。其中數字為 0 的格子代表該格為空(尚未填入 1 ~ 9 的數字,保證每列、每行只有一個這樣的格子)。
對於數獨的每列,請輸出唯一一個空格應填入何數?
範例輸入:
028167394
640328715
173490268
304586172
817034956
256719403
435801629
762953041
981642530
範例輸出:
5
9
5
9
2
8
7
8
7
解題思維:
因為數獨的規則:每列、每行以及每個九宮格中 1 ~ 9 只能各出現一次,因此完成後的數字總和應恰好為 45。
因此我們將每一列中輸入進來的數字們加總得到 S,將 45 減去 S 即可知道該列缺了哪個數字。
而因為題目保證每列、每行只會有一格空格,所以我們不需要額外判斷行的情況。
此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。