csf02vv03 @ 2023-01-29 17:45:17
#include<iostream>
using namespace std;
int main(){
int n, k;
cin >> n >> k;
int sum = n, sump = 0, m;
while (n >= k){
n = n % k;
sump = sum - (n * k);
m = n + sump;
sum = sum + n;
n = m;
}
cout << sum;
return 0;
}
1 AC
23 TLE
4~10 WA
求解
by Kevin_Mamba @ 2023-01-29 17:53:20
@ok142857
第一个错误:
n = n / k;
by Kevin_Mamba @ 2023-01-29 18:02:50
@ok142857
正确的部分代码:
int N=n;
n = n / k;
sump = N - (n * k);
by 2013zhoujy @ 2023-02-04 16:53:41
@ok142857 没有自己可以借烟蒂这一出,所以要减掉最后一根烟蒂;而且没有计算剩下的烟蒂,所以也没有正常的烟蒂数量换。 比如:10 3,你毕竟没有借的能力,所以要减掉最后一根,然后既然减去了最后一根,就要把换新烟的数量减去1根。(10-1)/(3-1)=4,然后再加10,就是14. 代码上线
#include <bits/stdc++.h>
using namespace std;
int main()
{
int k,m;
cin>>m>>k;
cout<<m+(m-1)/(k-1);
return 0;
}