c423. pB 還原密碼
Tags :
Accepted rate : 129人/179人 ( 72% ) [非即時]
評分方式:
Tolerant

最近更新 : 2017-12-06 23:54

Content

蓋茲是一位著名的寶藏獵人,他花了兩年的時間追尋一批從漢朝流傳下來的寶藏。


去年他在西安郊區的寺廟中得到一條線索,包含一段文字「數字加總,反覆為之,止於一位,謂之為根。」以及一個數字 5。

今年他又在洛陽的石窟裡找到另一段文字「增添一位,其根相符,不為最大,不為最小。」和一組數字 138。

上個月他找到跟這批寶藏有關的寶藏盒,可是寶藏盒還需要兩組四個數字的密碼才能打開。
他思考了很久,總算參透了這兩條線索的意思。


第一條線索所說的,是把一組數字的每個數字加總起來,反覆操作,直到變成一位數字,稱之為根。

例如數字 138 會變成 1+3+8=12 再變成 1+2=3,3 便稱為 138 的根。


第二條線索所說的,是要把 138 加上一位數字,讓此組數字的根為第一條線索說的 5。

符合根為 5 的數字組合有四個,分別是 2138, 1238, 1328 和 1382。

不是最大也不是最小的組合是 1328 和 1382,蓋茲嘗試了這兩組密碼,果然就打開了寶藏盒。


現在要請你寫一個程式進行類似上述的密碼還原工作。

Input

每筆測資有兩行。

第一行有兩個整數值, 以一個空白字元隔開。

第一個整數 N (3 <= N <= 30) 代表密碼有幾個數字。

第二個數為根 R (0 <= R <= 9)。
第二行有連續 (N-1) 個數字 d1 d2 d3 ... d(N-1) ,數字 di{0, 1, 2, ..., 9},(1 <= i <= N–1)。

Output
依據輸入,由小到大輸出所有可能的密碼,每組密碼輸出於獨立的一行。
(可假設至少有一組可能的密碼。)
Sample Input #1
輸入範例 1:
3 6
12

輸入範例 2:
4 5
138

輸入範例 3:
5 4
0011
Sample Output #1
輸出範例 1:
132

輸出範例 2:
1328
1382

輸出範例 3:
00121
00211
02011
測資資訊:
記憶體限制: 128 MB
不公開 測資點#0 (6%): 1.0s , <1K
不公開 測資點#1 (6%): 1.0s , <1K
不公開 測資點#2 (6%): 1.0s , <1K
不公開 測資點#3 (6%): 1.0s , <1K
不公開 測資點#4 (6%): 1.0s , <1K
不公開 測資點#5 (7%): 1.0s , <1K
不公開 測資點#6 (7%): 1.0s , <1K
不公開 測資點#7 (7%): 1.0s , <1K
不公開 測資點#8 (7%): 1.0s , <1K
不公開 測資點#9 (7%): 1.0s , <1K
不公開 測資點#10 (7%): 1.0s , <1K
不公開 測資點#11 (7%): 1.0s , <1K
不公開 測資點#12 (7%): 1.0s , <1K
不公開 測資點#13 (7%): 1.0s , <1K
不公開 測資點#14 (7%): 1.0s , <1K
Hint :
Tags:
出處:
104學年度全國資訊學科能力競賽 [管理者: andy89923 (CTFang) ]

Status Forum 排行

ID User Problem Subject Hit Post Date
38194 Chaoray (巧克力內餡貢丸) c423
小心重複
374 2023-11-02 19:01