#ABC273B. [ABC273B] 破损的四舍五入(Broken Rounding)

[ABC273B] 破损的四舍五入(Broken Rounding)

题目描述

给定一个非负整数 XX,按照 i=0,1,,Ki = 0,1, \dots ,K 的顺序执行以下操作,求操作全部完成后 XX 的值。

XX10i10^i位及以下四舍五入。

更正式地说,将 XX 替换为 YY, 其中 YY 是满足YX∣Y−X∣ 最小的 10i10^i 的倍数中的最大值。

举几个例子:

273273 四舍五入到 10210^2 位得到 300300

999999 四舍五入到 10310^3 位得到 10001000

100100 四舍五入到 101010^{10}位得到 00

10151015 四舍五入到 10110^1 位得到 10201020

输入格式

输入从标准输入按以下格式给出:

X X K K

输出格式

将答案作为整数打印出来。

输入输出样例 #1

输入 #1

2048 2

输出 #1

2100

输入输出样例 #2

输入 #2

1 15

输出 #2

0

输入输出样例 #3

输入 #3

999 3

输出 #3

1000

输入输出样例 #4

输入 #4

314159265358979 12

输出 #4

314000000000000

说明/提示

样例 1 解释

经过操作,XX 的变化为 2048205021002048\rightarrow 2050 \rightarrow 2100

样例 4 解释

XX 可能无法用 3232 位整数类型表示。

数据范围

  • X,K X,K 都是整数
  • 0  X < 1015 0\ \le\ X\ <\ 10^{15}
  • 1  K  15 1\ \le\ K\ \le\ 15