题目描述
非負整数 X に対し、 i=0,1,…,K−1 の順に次の操作を行ったとき、操作を全て終えた時点での X を求めてください。
- X の 10i の位以下を四捨五入する。
- 厳密には、 X を「 ∣Y−X∣ が最小となる 10i+1 の倍数のうち最大のもの」である Y に置き換える。
- 具体例を挙げる。
- 273 の 101 の位以下を四捨五入すれば 300 となる。
- 999 の 102 の位以下を四捨五入すれば 1000 となる。
- 100 の 109 の位以下を四捨五入すれば 0 となる。
- 1015 の 100 の位以下を四捨五入すれば 1020 となる。
输入格式
入力は以下の形式で標準入力から与えられる。
X K
输出格式
答えを整数として出力せよ。
题目大意
已知一个数字 X,依次进行 K 次操作。
每次对数字 X 按 10i 进行做 四舍五入 操作。
例: 273 按 102 做四舍五入为 300 ; 273 按 101 做四舍五入为 270。
请你求出,K 次操作后,数字 X 最终变为多少。
其中
0≤X≤1015
1≤K≤15
1≤i≤K
2048 2
2100
1 15
0
999 3
1000
314159265358979 12
314000000000000
提示
制約
- X,K は整数
- 0 ≤ X < 1015
- 1 ≤ K ≤ 15
Sample Explanation 1
操作の過程で、 X は 2048 → 2050 → 2100 と変化します。
Sample Explanation 4
X は 32bit 整数型に収まらない可能性があります。