Multiple of Nine

View as PDF

Submit solution

Points: 0.70
Time limit: 4.0s
Memory limit: 1G

Author:
Problem type
Problem Statement

Count the number of strings ~S~ that satisfy the following constraints, modulo ~10^9 + 7~ .

  • The length of ~S~ is exactly ~N~ .
  • ~S~ consists of digits ( 0 ... 9 ).
  • You are given ~Q~ intervals. For each ~i (1 \leq i \leq Q)~ , the integer represented by ~S[l_i \ldots r_i]~ (the substring of ~S~ between the ~l_i~ -th ( ~1~ -based) character and the ~r_i~ -th character, inclusive) must be a multiple of ~9~ .

Here, the string ~S~ and its substrings may have leading zeroes. For example, 002019 represents the integer ~2019~ .

Constraints
  • ~1 \leq N \leq 10^9~
  • ~1 \leq Q \leq 15~
  • ~1 \leq l_i \leq r_i \leq N~

Input

Input is given from Standard Input in the following format:

~N~

~Q~

~l_1~ ~r_1~

~:~

~l_Q~ ~r_Q~

Output

Print the number of strings that satisfy the conditions, modulo ~10^9 + 7~ .


Sample Input 1
4
2
1 2
2 4
Sample Output 1
136

For example, ~S = ~ 9072 satisfies the conditions because both ~S[1 \ldots 2] = ~ 90 and ~S[2 \ldots 4] = ~ 072 represent multiples of ~9~ .


Sample Input 2
6
3
2 5
3 5
1 3
Sample Output 2
2720

Sample Input 3
20
10
2 15
5 6
1 12
7 9
2 17
5 15
2 4
16 17
2 12
8 17
Sample Output 3
862268030

Comments

Please read the guidelines before commenting.


There are no comments at the moment.