您的位置:首页 > 其它

1449 砝码称重 题目来源: CodeForces

2018-01-20 18:58 211 查看
F
现在有好多种砝码,他们的重量是 $w^0,w^1,w^2,...$  每种各一个。问用这些砝码能不能表示一个重量为m的东西。
样例解释:可以将重物和3放到一个托盘中,9和1放到另外一个托盘中。

Input
单组测试数据。
第一行有两个整数w,m (2≤ w ≤ 10^9, 1 ≤ m ≤ 10^9)。

Output
如果能,输出YES,否则输出NO。

Sample Input
3 7

Sample Output
YES
 
来自 <https://vjudge.net/problem/description/78987?1516367853000

#include<iostream>
using namespace std;
int main()
{
int w,m;
cin >> w >> m;
while (m != 0)
{
if (m % w == 1 || m % w == 0)
{
m = m / w;
}
else if (m % w == w - 1)
{
m = (m + 1) / w;//进位的思想
}
else
{
cout << "NO"<<endl;
return 0;
}
}
cout << "YES"<<endl;
//system("pause");
return 0;
}

参考 http://blog.csdn.net/mm__1997/article/details/72318511 集训第一天....这道题想了很久 最后上网百度了思路才做出来...题解说是贪心加进制转换 还是没太明白哪里用了贪心了...学艺不精啊
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: