討論串[問題] 0~9 挑k個數字, 組出最接近 A 的數字
共 5 篇文章
內容預覽:
使用以下例子說明題目要求:. input(A, k) ,. A 表示目標數字. k 表示可以使用的 digit 數目. 補充條件(謝謝 E板友提醒):. 1 <= A <= 10^15, 1<=k<=10. Ex1. Input(8000, 1). 代表只能使用一種數字,來組成最接近 8000 的數
(還有216個字)
內容預覽:
我覺得這題關鍵測資應該是類似 (8000, 1) , (88499 , 2). 假設 input(88499, 2) , 令 input[4:0] = {9,9,4,8,8} , len = 5. 虛碼大概如下. dig = 2; // 只能使用 2 位數. use_dig = 0; // 已使用位
(還有831個字)
內容預覽:
關鍵測資會因為此題目的解法不同而有變化。. 採用以下暴力解當A很大,k = 1時,會跑非常久。. 本解題技巧:拆解數字字串串接為新數字求解。. 解法:. 1.將A轉成字串,從len - 1開始loop每個字元,suppose index = x;. Ex: 3355798521. 2.從x位置拆解字
(還有488個字)
內容預覽:
有想到個方法大家討論討論> <. 不知道有沒有哪邊沒考慮清楚的!!. 能使用k個數字, 我們可以窮舉是哪k個. 對於每一個可能的組合去求出最接近的數字. 對於一個N位數的數字而言. 我們的答案可能為N位數或N-1位數. 想不到答案要N+1位數的case... 以N-1位數的答案ans而言. ans肯
(還有435個字)
內容預覽:
後面應該沒什麼大問題。但對於窮舉k個,我考慮有規則的情況。. let d(x) 為 A 的 digits 數。. 於是原本題目的解的domain可以為 d(A) 必定 > k,不然就直接輸出A。. 後面敘述的最高位想法是可以拿來規則化取候選 digits. 1.對於 k = 1,候選 digits
(還有987個字)