atcoder#ABC155E. [ABC155E] Payment

[ABC155E] Payment

题目描述

AtCoder 王国の通貨は 10100+1 10^{100}+1 種類の紙幣のみであり、価値はそれぞれ 1, 10, 102, 103, , 10(10100) 1,\ 10,\ 10^2,\ 10^3,\ \dots,\ 10^{(10^{100})} です。あなたは商店街で、価値 N N のたこ焼き器を 1 1 つ買おうとしています。

あなたは N N 以上の金額を決めて支払います。その後、支払額よりちょうど N N だけ少ない金額を、店員がお釣りとして支払います。

あなたと店員が使う紙幣の組合せを適切に設定するとき、両者の使う紙幣の枚数の合計は最小で何枚になるでしょう?

なお、あなたも店員も任意の紙幣を十分多く持っているとします。

输入格式

入力は以下の形式で標準入力から与えられる。

N N

输出格式

支払う紙幣の枚数とお釣りとして受け取る紙幣の枚数の合計の最小値を出力せよ。

题目大意

题目描述

给定正整数 NN,设 f(x)f(x) 表示 xx 在十进制下各个数位上的数的和,求一个正整数 xx 满足 xNx\ge N 且最小化 f(x)+f(xN)f(x)+f(x-N)

数据范围

1N1010000001\le N\le10^{1000000}

输入输出格式

输入格式

一行一个正整数 NN,含义如题所述。

输出格式

一行一个正整数 ansans,表示最小的 f(x)+f(xN)f(x)+f(x-N)

36
8
91
3
314159265358979323846264338327950288419716939937551058209749445923078164062862089986280348253421170
243

提示

制約

  • N N 1 1 以上 101,000,000 10^{1,000,000} 以下の整数

Sample Explanation 1

あなたが価値 10 10 の紙幣 4 4 枚を支払い、店員が価値 1 1 の紙幣 4 4 枚をお釣りに渡すと、使う紙幣の枚数は合計で 8 8 枚になります。 8 8 枚より少ない合計枚数を達成することはできないので、答えは 8 8 です。

Sample Explanation 2

あなたが価値 100 100 の紙幣 1 1 枚と価値 1 1 の紙幣 1 1 枚を支払い、店員が価値 10 10 の紙幣 1 1 枚をお釣りに渡すと、使う紙幣の枚数は合計で 3 3 枚になります。