AT_past17_k 正しいチェックディジット
Description
You are given a length- $ N $ string $ S $ consisting of digits and `?`.
Determine if one can replace each occurrence of `?` with a digit so that the following value is a multiple of $ 10 $ . If it is possible, find one such replacement.
- $ \displaystyle \sum^{N}_{i=1} $ $ i $ $ \times $ (the $ i $ -th character of $ S $ interpreted as a one-digit integer).
Input Format
The input is given from Standard Input in the following format:
> $ N $ $ S $
Output Format
Print `No` in a single line if there is no conforming replacement.
Otherwise, print a replacement in the following format.
> Yes $ T $
The first line should contain `Yes`.
The second line should contain a string $ T $ obtained by a replacement that satisfies the condition in the problem statement.
Explanation/Hint
### Sample Explanation 1
Consider what digit should replace the $ 4 $ -th character `?` of `935?0`.
- If the $ 4 $ -th character `?` is replaced by $ 5 $ , the resulting string is $ T= $ `93550`.
- $ 1 \times 9 + 2 \times 3 + 3 \times 5 + 4 \times 5 + 5 \times 0 = 50 $ , which is indeed a multiple of $ 10 $ .
Alternatively, we can also satisfy the condition in the problem statement by replacing the $ 4 $ -th character `?` with $ 0 $ , thus yielding `93500`.
### Sample Explanation 2
There are $ 100 $ ways to replace the two occurrences of `?` in `1?3?5`, but none of them satisfies the condition in the problem statement.
### Sample Explanation 3
While the string `0` does not contain `?` to replace, $ 1 \times 0 = 0 $ is already a multiple of $ 10 $ .
### Constraints
- $ N $ is an integer between $ 1 $ and $ 2 \times 10^5 $ , inclusive.
- $ S $ is a length- $ N $ string consisting of digits and `?`.