732A - Buy a Shovel
波利卡普急需一把铁锹!他来到商店,挑选了一把合适的铁锹。波利卡普选择的铁锹售价为 k 布勒。假设商店里有无数把这样的铁锹。
波利卡普的口袋里有无数个 "10 布勒硬币 "和一个 r 布勒的硬币( 1 ≤ r ≤ 9 )。
波利卡普最少要买多少把铁锹才能不带任何零钱地付清货款呢?很明显,他可以不找零地支付 10 个铁锹的费用(支付所需的 10 伯勒硬币,而不使用 r 伯勒硬币)。但也许他可以少买几把铁锹而不用找零。注意,波利卡普至少应该买一把铁锹。
输入
单行输入包含两个整数 k 和 r ( 1 ≤ k ≤ 1000 , 1 ≤ r ≤ 9 ) --一把铁锹的价格和波利卡普口袋里与 "10 伯勒硬币 "不同的硬币的面值。
请记住,他有数量不限的 10 面值的硬币,也就是说,波利卡普有足够的钱购买任意数量的铁锹。
输出
打印波利卡普所需购买的铁锹的最小数量,这样他就可以支付这些铁锹的费用而不会有任何变化。
例如:
输入:
117 3
输出:
9
输入:
237 7
输出:
1
输入:
15 2
输出:
2
注意
在第一个例子中,波利卡普可以买 9 把铲子并支付 9·117 = 1053 布勒。事实上,他可以用 10 伯勒硬币和一个 3 伯勒硬币来支付这笔钱。他不能在不找零的情况下购买更少的铁锹。
在第二个例子中,波利卡普买一把铁锹就足够了。
在第三个例子中,波利卡普应该买两把铁锹并支付 2·15 = 30 个伯乐。很明显,他可以支付这笔钱而不发生任何变化。
解决方法:
// codeforces
// 732A. Buy a Shovel
# include<iostream>
using namespace std;
int main()
{
int k, r;
cin >> k >> r;
for(int i = 1; ; i++)
{
if(k*i%10 == r || k*i%10 == 0)
{
cout << i;
break;
}
}
return 0;
}