Vanya and Scales

Vanya and Scales

https://ac.nowcoder.com/acm/problem/110987

思路:

做这种题,第一步就是搞清楚题目要干什么,其实这个题目就是判断一个式子是否成立:


我们观察可以发现,每次都只有第一项不一定是的倍数,其他一定是的倍数.那么每次我们都判断下,然后将.然后一直处理到即可,假如中途不成立,那么输出,否则就是.
当然还有个值得注意的地方就是你代码应该先检测-1,再检测1.比如说你m=1,你检测-1/+1都是可以的,但是你先+1的话,就会死循环.

代码:

#include <bits/stdc++.h>
using namespace std;
int main()
{
    int w,m;
    cin>>w>>m;
    while(m)
    {
        if(m%w==0)    ;
        else if((m-1)%w==0)    m--;
        else if((m+1)%w==0)    m++;
        else
        {
            puts("NO");return 0;
        }m/=w;
    }puts("YES");
    return 0;
}

应该是高质量的题解.

全部评论

相关推荐

野猪不是猪🐗:😇:恭喜你以出色的表现成为xxx的一员 😨:您以进入本公司人才库 实际点开:您愿望单中的xxx正在特卖!
点赞 评论 收藏
分享
评论
4
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务