Điều hướng chính

Nhắn tin NQ Coding

Ngôn ngữ

Phím tắt

/
Chuyển đến ô tìm bài
g p
Đi đến bài tập
g c
Đi đến kỳ thi
g u
Đi đến người dùng
?
Mở trợ giúp phím tắt

Bài tập demensangsong

Dế Mèn sang sông

Dễ Quy hoạch độngMảng cộng dồn (Prefix Sum)

  • 100 Điểm
  • 1.0s Thời gian
  • 500M Bộ nhớ
  • 0% Tỉ lệ AC
  • 0 Số AC

Dế Mèn đi học phải qua một con sông có \(N\) hòn đá xếp thẳng hàng, đánh số \(1, 2, \dots, N\) theo chiều từ nhà đến trường. Mỗi ngày Dế Mèn xuất phát từ hòn đá \(1\) và phải kết thúc tại hòn đá \(N\).

Đứng ở hòn đá \(x\), Dế Mèn nhảy tới hòn đá \(x + d\) với \(d\) là một số nguyên dương nằm trong một trong \(K\) đoạn số nguyên đôi một không giao nhau \([L_1, R_1], [L_2, R_2], \dots, [L_K, R_K]\) (không được nhảy vượt quá hòn đá \(N\)). Hai cách đi là khác nhau nếu chuỗi các hòn đá đã đặt chân lên khác nhau.

Đếm số cách đi khác nhau từ hòn đá \(1\) đến hòn đá \(N\), in kết quả chia lấy dư cho \(1000000007\). (Nếu \(N = 1\) thì có đúng \(1\) cách: không nhảy.)

Input

  • Dòng đầu: hai số nguyên \(N\) và \(K\).
  • \(K\) dòng tiếp theo, dòng thứ \(i\) gồm hai số nguyên \(L_i, R_i\).

Output

  • In ra số cách đi khác nhau, modulo \(1000000007\).

Constraints

  • \(1 \le N \le 200000\), \(1 \le K \le 10\).
  • \(1 \le L_i \le R_i \le N\); các đoạn đôi một không giao nhau.
  • Subtask: \(20\%\) số test có \(N \le 10\), \(K = 1\); \(30\%\) có \(N \le 1000\), \(K = 1\); \(20\%\) có \(N \le 10000\); còn lại \(N \le 200000\).

Sample Input

9 3
1 1
3 3
5 6

Sample Output

22

Bình luận

Chưa có bình luận nào.