嵊州D1T1
总统先生,一路走好!
在总统先生的所有财产就是 n 杯黑咖啡,咖啡店可以用 m 个空杯子换一杯黑咖啡。
因为总统的特殊身份,心地善良而心生怜悯的咖啡店店长决定先借给总统一杯黑咖啡,只要他最后 能还回来就好。
但是为了不在公众面前暴露总统的身份,店长的行为不能太过于引人注目,所以店长最多也只会先借给总统先生一杯黑咖啡。
现在,总统先生一共能喝多少杯黑咖啡?
尊严!正义!哪怕是一杯咖啡。
Input
一行两个整数 n, m。
Output
一行一个整数,表示总统最多能喝多少杯黑咖啡。
Examples
president.in | president.out |
10 3 | 15 |
10 4 | 13 |
Notes
对于所有数据,满足 1 ≤ n ≤ 10^18 , 2 ≤ m ≤ 10^9。
Task1[30%]
n ≤ 10 , m ≤ 3
Task2[70%]
n ≤ 100 , m ≤ 10
Task3[100%]
无特殊限制
solve
#include<cstdio>
using namespace std;
int main()
{
//freopen("president.in","r",stdin);
//freopen("president.out","w",stdout);
long long n,m,tn,k;
scanf("%lld %lld",&n,&m);
tn=n/m;//换来的黑咖啡
k=n%m+tn;//第一次换多余的空杯
while(k>=m){
k-=m;
tn++;
k++;
}
if(k==m-){
tn++;
k++;
}
printf("%lld",n+tn);
return ;
}
本来是70分,很纳闷啊。
哈哈哈我全用int了。要全改成long long啦
OK补全了30分咯!