编程题
### 问题描述
小蓝忘记了他的行李箱密码了,行李箱密码由 $k$ 位 $[0,9]$ 的 $10$ 个整数构成。现在他只记得每个数字在密码中的出现情况,`0` 表示该位置没有出现,`1` 表示该位置一定出现,`2` 表示该位置可能出现。例如 `0001112222`。三个 `0` 表示 $[0,2]$ 在密码中没有出现过,三个 `1` 表示 $[3,5]$ 在密码中一定出现过,四个 `2` 表示 $[6,9]$ 在密码中可能出现过。
小蓝现在想知道有多少个密码符合上述情况,你可以帮助他吗?
数据保证 `1` 的数量不会超过 $k$ ,且一定合法。
### 输入格式
第一行一个正整数 $k$ ,表示行李箱密码的位数。
第二行一个长度为 $10$ 的字符串 $|S|$,由 `0 1 2` 构成,表达每一位数的出现情况。
### 输出格式
一行一个整数,表示符合条件的密码个数。
### 样例输入
```text
4
0000000021
```
### 样例输出
```text
15
```
### 说明
符合条件的密码有 `9999`,`9998`,`9989`,`9899`,`8999`,`9988`,`9898`,`9889`,`8989`,`8899`,`8998`,`8889`,`8898`,`8988`,`9888`。
### 评测数据规模
$|s|=10,1 \le k \le 5$。