1470: 密码锁

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:18 Solved:5

Description

有一个由$n$个从左到右并排圆环组成的密码锁,每个圆环上都有$10$个数字($0$ ~ $9$)。蓝色框内为密码显示区,每个圆环在密码显示区只能显示一个数字。

如下图所示,可以拨动圆环来改变密码显示区的数字。当密码显示区的数字与密码一致时,密码锁就会被打开。



现在给出一个由$n$个位数组成的密码$S$,密码由$1$ ~ $9$这些数字组成。

每次操作只能选择一个位置或者连续的多个位置圆环拨动,当$S$中的数字从左到右一次显示在密码显示区时,密码锁会被打开。

注意:

1、如果选择了其中一个圆环,可将该圆环中任意一个数字拨动到密码显示区,表示$1$次操作。

例如:将第$3$个圆环拨动到数字$4$,表示$1$次操作:



2、如果选择了位置连续的多个圆环,只能将这些圆环拨动成同一个数字,显示在密码显示区,表示$1$次操作。

例如:将连续的第$2$个到第$3$个圆环都拨动到数字$5$,表示$1$次操作:



例如:

当$n$ = $5$,$S$ = $12321$,分别表示$5$个圆环组成的密码锁和密码$12321$;

将$5$位密码$1$、$2$、$3$、$2$、$1$从左到右一次显示在密码显示区,以下是操作最少次数的方案:

第一次操作,将$5$个初始状态为$0$的圆环全部拨动到数字$1$:



第二次操作,将第$2$个到第$4$个圆环全部拨动到数字$2$:



第三次操作,将第$3$个圆环拨动到数字$3$:



最少需要操作$3$次才能打开密码锁。

已知每个圆环在密码显示区初始数字都为$0$,请计算出最少需要操作多少次,才能打开密码锁。

Input

第一行输入一个整数$n$,表示组成的密码锁的圆环数及密码的位数;

第二行为$n$位的数字,数字由$1$~$9$组成,代表密码。

Output

输出一个整数,表示最少需要操作多少次,才能打开密码锁。

Sample Input Copy

5
12321

Sample Output Copy

3

HINT

$1$ ≤ $n$ ≤ $100$

Source/Category