信息学真题第一期

NOIP2002普及组产生数

Posted by 刘者衣 on February 1, 2023

NOIP2002普及组产生数

题目描述

给出一个整数 n 和 k 个变换规则。

规则:

  • 一位数可变换成另一个一位数。
  • 规则的右部不能为零。

例如:n=234,k=2。有以下两个规则:

  • 2\longrightarrow 5。
  • 3\longrightarrow 6。

上面的整数 234 经过变换后可能产生出的整数为(包括原数):

  • 234。
  • 534。
  • 264。
  • 564。

共 4 种不同的产生数。

现在给出一个整数 n 和 k 个规则。求出经过任意次的变换(0次或多次),能产生出多少个不同整数。

仅要求输出个数。

输入格式

第一行两个整数 n,k,含义如题面所示。

接下来 k 行,每行两个整数 $x_i,y_i$,表示每条规则。

输出格式

共一行,输出能生成的数字个数。

样例 #1

样例输入 #1

234 2
2 5
3 6

样例输出 #1

4

提示

对于 $100\%$ 数据,满足 $n \lt 10^{30}$,$k \le 15$。

【题目来源】

NOIP 2002 普及组第三题