1. 程式人生 > >Codeforces Round #434 (Div. 2)

Codeforces Round #434 (Div. 2)

A. k-rounding

time limit per test

1 second

memory limit per test

256 megabytes

input

standard input

output

standard output

For a given positive integer n denote its k-rounding as the minimum positive integer x, such that x ends with k or more zeros in base 10 and is divisible by n.

For example, 4-rounding of 375 is 375·80 = 30000. 30000 is the minimum integer such that it ends with 4 or more zeros and is divisible by 375.

Write a program that will perform the k-rounding of n.

Input

The only line contains two integers n and k (1 ≤ n ≤ 109, 0 ≤ k ≤ 8).

Output

Print the k-rounding of n.

Examples

input

375 4

output

30000

input

10000 1

output

10000

input

38101 0

output

38101

input

123456789 8

output

12345678900000000

題意:

有n,k兩個數,求對於 n 的 k-rounding 數,k-rounding 數就是一個有k個後置零的可以被n整除的最小數

題解:

  就是求lcm(n,10^k) = n * 10 ^ k / gcd(n,10^k)

#include<stdio.h>
#define LL long long
LL n,k,kk = 1;
LL gcd(LL a,LL b){
    return b == 0 ? a : gcd(b, a%b);
}
int main()
{
    scanf("%lld %lld",&n,&k);
    for(int i=1;i<=k;i++) kk *= 10;
    printf("%lld", n * kk / gcd(n,kk));
    return 0;
}