绝命沙虫 精度,double,模拟 牛客白月赛44
鏈接:https://ac.nowcoder.com/acm/contest/11221/C
來源:牛客網
時間限制:C/C++ 1秒,其他語言2秒
空間限制:C/C++ 262144K,其他語言524288K
64bit IO Format: %lld
題目描述
風暴來,黃沙起,絕命沙蟲劇毒見。
初始時你的手上有 NN 元 RMB。
交易規則如下:
你通過充值 aa 元可以獲得 a\times100a×100 紅點和 \min{10000,a\times100\times(M-1)}min{10000,a×100×(M?1)} 綠點,其中 MM 是充值返點倍率。
你每次充值的數量必須是正整數,也就是說不能為零或負數。
你通過出售 bb 紅點可以獲得 \left\lfloor\dfrac{b}{200}\right\rfloor?
200
b
?
? 元 RMB 和 \left\lfloor\dfrac{b}{10}\right\rfloor?
10
b
?
? 點消費經驗。
你通過出售 cc 綠點可以獲得 \left\lfloor\dfrac{c}{10}\right\rfloor?
10
c
?
? 點消費經驗。
給定 N,MN,M,請回答你最后獲得的消費經驗是多少。
注意:任何時刻只要你手上有 RMB 或者有紅點/綠點你都依次使用并且用光,你不會手上有而不用。
輸入描述:
全文第一行輸入一個整數 T(1\le T\le10^5)T(1≤T≤10
5
),表示數據組數。
第一行輸入兩個數 N(1\le N\le10^5),M(1.1\le M\le2.0)N(1≤N≤10
5
),M(1.1≤M≤2.0),分別表示初始擁有的 RMB 數量和充值返點倍率。
數據保證 NN 是正整數,MM 一定是一位小數。
輸出描述:
每行輸出一個整數,你最后獲得的消費經驗是多少。
示例1
輸入
復制
2
10 1.5
160 2.0
輸出
復制
270
5760
說明
對于樣例 #1,充入 1010 RMB,獲得 10\times100=100010×100=1000 紅點和 10\times100\times(1.5-1)=50010×100×(1.5?1)=500 綠點。
花掉它們,獲得 \dfrac{1000}{10}+\dfrac{500}{10}=150
10
1000
?
+
10
500
?
=150 消費經驗和 \dfrac{1000}{200}=5
200
1000
?
=5 RMB。
充入 55 RMB,獲得 500500 紅點和 250250 綠點;花掉它們,獲得 50+25=7550+25=75 消費經驗和 22 RMB。
充入 22 RMB,獲得 200200 紅點和 100100 綠點;花掉它們,獲得 20+10=3020+10=30 消費經驗和 11 RMB。
充入 11 RMB,獲得 100100 紅點和 5050 綠點;花掉它們,獲得 10+5=1510+5=15 消費經驗。
結算(最終獲得):150+75+30+15=270150+75+30+15=270 消費經驗。
對于樣例 #2,充入 160160 RMB,獲得 1600016000 紅點和 1000010000 綠點;轉換成 8080 RMB 和 26002600 消費經驗;
充入 8080 RMB,獲得 80008000 紅點和 80008000 綠點;轉換成 4040 RMB 和 16001600 消費經驗;
充入 4040 RMB,獲得 40004000 紅點和 40004000 綠點;轉換成 2020 RMB 和 800800 消費經驗;
\cdots?
充入 11 RMB,獲得 100100 紅點和 100100 綠點;轉換成 2020 消費經驗。
結算(最終獲得):2600+1600+800+400+200+100+40+20=57602600+1600+800+400+200+100+40+20=5760 消費經驗。
思路 :
- 直接模擬即可
- 關于double的精度問題 :double類型在計算時轉化為二進制故有損失,例如 double a = 3.0 - 2.6,結果是0.39999999,這就是精度損失
- 這里模擬的公式中由于m是double類型,因此m - 1也是double類型,會有精度損失
- 解決方案有兩種 :1.依靠乘10(這里保證m只有一位小數)化為整型;2.加一個特別小的數然后向下取整(強轉int),注意強轉int是在最后整個公式的結果處,而不是double運算處
總結
以上是生活随笔為你收集整理的绝命沙虫 精度,double,模拟 牛客白月赛44的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 顽皮恶魔 牛客白月赛44
- 下一篇: 变异蛮牛 树,dfs,二分图染色 牛客白