#3WA,DALAO求助

P1150 Peter 的烟

not_exist @ 2022-08-26 13:02:57

#include <bits/stdc++.h>
using namespace std;
typedef long double ld;
typedef string sg;
typedef long lg;
typedef double de;
typedef char ch;
typedef long long ll;
typedef bool bl;
typedef unsigned int ui;
typedef unsigned long long ull;

int main()
{
    ll num=0,n,k;
    cin>>n>>k;
    while(n>=k){
        num+=n;
        n=(n/k);
    }
    num+=n;
    cout<<num;
    return 0;
}

by tbdsh @ 2022-08-26 13:40:43

@not_exist

您的while循环不应该是【当n >= 1]时重复执行,然后循环内num持续++。除此之外,还要再加一个变量计算当前未使用的烟蒂,即每吸一根烟当前未使用的烟蒂++。如果当前未使用的烟蒂数量>=k, 当前未使用的烟蒂数量 -= k, n++。

建议您按照此思路修改您的程序


by not_exist @ 2022-08-26 13:50:00

@tianbiandeshenghuo11 谢谢您


by tbdsh @ 2022-08-26 13:51:42

@not_exist

不谢~


by tbdsh @ 2022-08-26 13:53:09

(我似乎多打了一个不字)

您的while循环应该是【当n >= 1]时重复执行,然后循环内num持续++。除此之外,还要再加一个变量计算当前未使用的烟蒂,即每吸一根烟当前未使用的烟蒂++。如果当前未使用的烟蒂数量>=k, 当前未使用的烟蒂数量 -= k, n++。

哈,不要看上面那个了 @not_exist


by not_exist @ 2022-08-26 13:54:49

收到~


by not_exist @ 2022-08-26 14:01:12

AC成功!


by not_exist @ 2022-08-26 14:01:54


献出关注ing

|