#ddcc2020quald. [ddcc2020_qual_d]Digit Sum Replace

[ddcc2020_qual_d]Digit Sum Replace

题目描述

NN 名程序员将参加 DDCC 20XX 赛事的预选赛。由于场地规模的限制,最多只能有 99 名选手进入决赛。

预选赛由若干轮比赛组成,规则如下:

  • 所有 NN 名选手参加第一轮。
  • 当有 XX 名选手参加某轮比赛时,决定晋级下一轮的选手人数如下:
    • 组织者会选择 XX 的十进制表示中的两个连续数字,并将它们替换为这两个数字的和。得到的数就是晋级下一轮的选手人数。
      例如,当 X=2378X = 2378 时,晋级下一轮的选手人数可以是 578578(选择 2233),21082108(选择 3377),或者 23152315(选择 7788)。
      X=100X = 100 时,无论选择哪两个数字,晋级下一轮的选手人数都是 1010
  • 当剩下 99 名或更少的选手时,预选赛结束。

首席组织者 Ringo 希望举办尽可能多的比赛轮次。请找出预选赛中可能进行的最大轮次数量。

由于选手人数 NN 可能非常大,故给定两个整数序列 d1,ldots,dMd_1, \\ldots, d_Mc1,ldots,cMc_1, \\ldots, c_M 表示 NN 的十进制表示,以下是解释:NN 的十进制表示由 c1+c2+ldots+cMc_1 + c_2 + \\ldots + c_M 位数字组成,其中前 c1c_1 位数字均为 d1d_1,接下来的 c2c_2 位数字均为 d2d_2,以此类推,最后的 cMc_M 位数字均为 dMd_M

约束条件

  • 1leqMleq2000001 \\leq M \\leq 200000
  • 0leqdileq90 \\leq d_i \\leq 9
  • d1neq0d_1 \\neq 0
  • dineqdi+1d_i \\neq d_{i+1}
  • cigeq1c_i \\geq 1
  • 2leqc1+ldots+cMleq10152 \\leq c_1 + \\ldots + c_M \\leq 10^{15}

输入格式

输入以标准输入给出,格式如下:

MM d1d_1 c1c_1 d2d_2 c2c_2 :: dMd_M cMc_M

输出格式

输出预选赛中可能进行的最大轮次数量。


示例 1

2
2 2
9 1

示例 1 输出

3

在这种情况下,N=229N = 229 名选手将参加第一轮。预选赛可以按照以下方式进行:

  • 第一轮有 229229 名选手参加,第二轮有 4949 名选手参加,第三轮有 1313 名选手参加,最后有 44 名选手晋级决赛。

在这种情况下,预选赛共进行了三轮,这是可能的最大轮次数。


示例 2

3
1 1
0 8
7 1

示例 2 输出

9

在这种情况下,10000000071000000007 名选手将参加第一轮。