这是一个沙雕题II(思维好题)
生活随笔
收集整理的這篇文章主要介紹了
这是一个沙雕题II(思维好题)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
鏈接:https://ac.nowcoder.com/acm/contest/289/J
來源:牛客網
題目描述
因為gugugu非常喜歡9這個數字所以他希望把數字n變得末尾有盡可能多的9,不過他只能把n減小,且減小的數值不超過k,因為gugugu太菜了不會做這個題,所以需要你們幫他解答。
輸入描述:
多組數據輸入,第一行輸入一個整數n代表需要變換的數,和一個整數k代表最大能減少的數值。(1?≤?n?≤?1018,0?≤?k?<?n)
提示:OJ的測評機使用%lld輸出64位整型(即long long).若你寫代碼的系統為XP,在XP上運行程序測樣例時要改成%I64d才能正常輸出,但是提交到OJ上的時候必須改回%lld,因為OJ不是xp系統的。
輸出描述:
輸出以最大數量的9在末尾且滿足條件的數,如果有多個滿足條件請輸出最大的一個。
示例1
輸入
復制
127 30
4521 89
輸出
復制
99
4499
牛客上的題目真的挺鍛煉思維的哎。
就像這個題目,一開始真的一點思維也沒有。模擬也沒有想法。后來發現,要是想讓每一位后面有更多的9,只需要呢,在減數的時候,個位數比n的個位數多1,這樣就好了,這樣下去,每一位出來的都是9,只要不超過k,就可以一直減下去。
代碼如下:
努力加油a啊,(o)/~
總結
以上是生活随笔為你收集整理的这是一个沙雕题II(思维好题)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 这是一个沙雕题III(坑题)
- 下一篇: HJ浇花(牛客竞赛 约束差分)