mlkjy @ 2024-05-04 15:58:50
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n,k,m;
cin>>n>>k;
if(n>=k)
{
m=n/k;
cout<<n+m;
}
else
{
cout<<n;
}
}
by _Somutate_ @ 2024-05-04 16:05:25
将 m=n/k
改为 m=(n-1)/(k-1)
理由:用烟蒂换来的烟吸完后还可以用来换烟。
by cdxxmashaoyang @ 2024-05-04 16:05:28
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,k;
cin>>n>>k;
cout<<n+(n-1)/(k-1)<<endl;
return 0;
}
给个关注吧,能不能加一下www.luogu.com.cn/team/60983
by _Somutate_ @ 2024-05-04 16:06:23
具体证明可以见这篇题解。
@mlkjy
by shimucheng @ 2024-05-04 16:11:29
@mlkjy Peter可以用烟蒂吸完的烟再去换烟(考试时我就像你这么写,结果没过)
by mlkjy @ 2024-05-04 16:14:14
谢谢,已关