Keep Calm And Carry Off
题号:NC223569
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 512 M,其他语言1024 M
64bit IO Format: %lld

题目描述

Petra is learning how to add two positive integers in school, but thinks it is a bit too difficult. They are currently working with the standard algorithm for addition, where you first compute the sum of the two units digits, then the sum of the two tens digits, and so on. Whenever the sum of the digits at the same position in the two numbers exceeds 9, a carry digit is added onto the digit of the next higher magnitude. Petra has trouble with the last step – she often forgets to keep track of the carry digit.

A few weeks ago, she also learnt a simpler method of addition. In this method, you repeatedly add to one of the numbers and subtract 1 from the other, until the second one reaches zero. This can of course take a lot of time for large numbers.

Petra now wants to combine the two methods, for fast and error-free addition. Her plan is to first perform the second method one step at a time, until the two numbers would not produce a carry digit when added using the standard algorithm (for positive integers, this always happens eventually). To evaluate the performance of her new method, she has asked you to help her compute the number of steps she must perform of the second method when adding two given integers. Petra may perform the addition by to either of the two numbers (and subtraction by 1 from the other).

输入描述:

The input consists of two lines, each containing a positive integer with at mostdigits. These are the two integers Petra wants to add.

输出描述:

Output a single integer, the minimum number of times Petra must add 1 to one of her numbers (while subtracting1 from the other) until they can be added using the standard addition algorithm without any carry     digits.
示例1

输入

复制
10
99

输出

复制
1
示例2

输入

复制
90
10

输出

复制
10
示例3

输入

复制
23425
487915

输出

复制
12085