A. Buy a Shovel

该博客讨论了一个关于找零问题的算法题目,其中Polycarp需要购买铲子并用有限种类的硬币支付。题目要求找出最小的铲子数量使得支付金额可以被10整除或减去一个特定面额的硬币后被整除,从而无需找零。通过遍历不同购买数量,检查是否满足条件,博主给出了一个简单的C++解决方案。
摘要由CSDN通过智能技术生成

Problem - A - Codeforces

A. Buy a Shovel

time limit per test

1 second

memory limit per test

256 megabytes

input

standard input

output

standard output

Polycarp urgently needs a shovel! He comes to the shop and chooses an appropriate one. The shovel that Policarp chooses is sold for k burles. Assume that there is an unlimited number of such shovels in the shop.

In his pocket Polycarp has an unlimited number of "10-burle coins" and exactly one coin of r burles (1 ≤ r ≤ 9).

What is the minimum number of shovels Polycarp has to buy so that he can pay for the purchase without any change? It is obvious that he can pay for 10 shovels without any change (by paying the requied amount of 10-burle coins and not using the coin of r burles). But perhaps he can buy fewer shovels and pay without any change. Note that Polycarp should buy at least one shovel.

Input

The single line of input contains two integers k and r (1 ≤ k ≤ 1000, 1 ≤ r ≤ 9) — the price of one shovel and the denomination of the coin in Polycarp's pocket that is different from "10-burle coins".

Remember that he has an unlimited number of coins in the denomination of 10, that is, Polycarp has enough money to buy any number of shovels.

Output

Print the required minimum number of shovels Polycarp has to buy so that he can pay for them without any change.

Examples

input

Copy

117 3

output

Copy

9

input

Copy

237 7

output

Copy

1

input

Copy

15 2

output

Copy

2

Note

In the first example Polycarp can buy 9 shovels and pay 9·117 = 1053 burles. Indeed, he can pay this sum by using 10-burle coins and one 3-burle coin. He can't buy fewer shovels without any change.

In the second example it is enough for Polycarp to buy one shovel.

In the third example Polycarp should buy two shovels and pay 2·15 = 30 burles. It is obvious that he can pay this sum without any change

题意 :你有无限个的10块和一个r元的,你最少买几把铲子可以不用找零钱,所以要么被10整除,要么减去零钱r后被整除,正好整除就行。

#include<iostream>
using namespace std;
int k,r;
int main()
{
    cin>>k>>r;
    for(int i=1;;i++)
    {
        if((i*k)%10==0||(i*k-r)%10==0)
        {
            cout<<i;
            return 0;
            
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值