Once a cheque has been scanned, some image processing software would convert the horizontal and vertical bars to ASCII bars '|' and underscores '_'.
The ASCII 7-segment versions of the ten digits look like this:
A bank account has a 9-digit account number with a checksum. For a valid account number, the following equation holds: (d1 + 2 × d2 + 3 × d3 + . . . + 9 × d9) mod 11 = 0. Digits are numbered from right to left like this: d9d8d7d6d5d4d3d2d1.
Unfortunately, the scanner sometimes makes mistakes: some line-segments may be missing. Your task is to write a program that deduces the original number, assuming that:
For example, the following input
_ _ _ _ _ _ _ | _| _||_||_ |_ ||_||_| ||_ _| | _||_| ||_| _|used to be "123456789".
failure
" if no solutions were found
and "ambiguous
" if more than one solution was found.
4 _ _ _ _ _ _ _ | _| _||_||_ |_ ||_||_| ||_ _| | _||_| ||_| _| _ _ _ _ _ _ _ |_||_|| || ||_ | | || | _||_||_||_| | | | _| _ _ _ _ _ _ _ _ _ |_||_||_||_||_||_||_||_||_| |_||_||_||_||_||_||_||_||_| _ _ _ _ _ _ _ _ |_| ||_||_||_||_||_||_||_| |_| ||_||_||_||_||_||_||_|
123456789 ambiguous failure 878888888