NC231932. 绝命沙虫
描述
风暴来,黄沙起,绝命沙虫剧毒见。
输入描述
全文第一行输入一个整数 ,表示数据组数。第一行输入两个数 ,分别表示初始拥有的 RMB 数量和充值返点倍率。数据保证 是正整数, 一定是一位小数。
输出描述
每行输出一个整数,你最后获得的消费经验是多少。
示例1
输入:
2 10 1.5 160 2.0
输出:
270 5760
说明:
对于样例 #1,充入 RMB,获得 红点和 绿点。C++(clang++ 11.0.1) 解法, 执行用时: 216ms, 内存消耗: 1072K, 提交时间: 2023-07-15 19:39:51
#include<bits/stdc++.h> using namespace std; int main(){ int t; cin>>t; while(t--){ int n; double m; cin>>n>>m; long long ans=0; while(n){ ans+=10*n+min(1000,int(n*(10*m-10))); n/=2; } cout<<ans<<endl; } }
pypy3 解法, 执行用时: 490ms, 内存消耗: 29332K, 提交时间: 2022-02-08 09:35:49
T=int(input()) while T: T-=1 n,m=input().split() n=int(n) m=float(m) ans=0 while n: ans+=n*10+min(1000,n*10*(m-1)) n>>=1 print("%d"%ans)
Python3 解法, 执行用时: 1866ms, 内存消耗: 5284K, 提交时间: 2022-10-11 13:41:11
for _ in range(int(input())): n,m=input().split() n=int(n);ans=0 while n: ans+=n*10+min(1000,n*int(float(m)*10-10)) n>>=1 print(ans)