#include <stdio.h>
#define min(x, y) (x<y?x:y)
int main()
{
int a[10]={0, 10, 5, 10, 5, 2, 5, 10, 5, 10};
int k, r;
scanf("%d %d", &k, &r);
int temp=k%10;
int i;
int ans;
if(k%10==0)
ans=1;
else
{
for(i=1; i<10; ++i)
if(((temp*i)%10)==r)
break;
ans=min(a[temp], i);
}
printf("%d\n", ans);
return 0;
}
@对于读入的变量k,先判断它是否能被10整除。如果能Answer为1;如果不能,则在以下两种情况里选择其中的最小值即为Answer。情况一:在不使用给定零钱下,即在只用面额为10的情况下最少需要买几把铲子;情况二:在使用给定零钱下,即在用给定零钱的面额(一张)+若干张面额为10的情况下最少需要买几把铲子。
posted on
浙公网安备 33010602011771号