切換
舊版
前往
大廳
主題

ZeroJudge - e662: 11830 - Contract Revision 解題心得

Not In My Back Yard | 2020-02-17 00:07:11 | 巴幣 0 | 人氣 159

題目連結:


題目大意:
輸入有多列,每列給定兩正整數 D 、 N (1 ≦ D ≦ 9 , 1 ≦ N ≦ 10 ^ 100,如果 D = N = 0 代表輸入結束),代表打字機的數字按鍵之 D 壞掉了,且要打的金額為 N 。

求使用數字按鍵 D 壞掉的打字機所打出來的金額,其值實為多少?


範例輸入:
5 5000000
3 123456
9 23454324543423
9 99999999991999999
7 777
0 0


範例輸出:
0
12456
23454324543423
1
0


解題思維:
D 用字元型態儲存、 N 用字串型態儲存。掃過一次 N 的字元,將所有等於 D 的字元刪除,形成一個新字串 N' 。

接著將 N' 的前導 0 全數刪除。如果 N' 本來就是空的字串,那代表原本的數字 N 皆是由 D 組成,所以實際值為 0 ;如果 N' 全部都是 0 ,則實際值也為 0 ;除此之外,除去前導 0 後的 N' 即是所求。

此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。

創作回應

更多創作