Đ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 dpbasicmotamang

Đếm mảng

Dễ Quy hoạch động

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

Cho một mảng gồm \(N\) số nguyên dương có giá trị các phần tử thuộc đoạn \([1, M]\), và giá trị tuyệt đối của hiệu hai giá trị liền kề tối đa là \(1\).

Vì một số lỗi kĩ thuật, hệ thống đã làm đánh mất thông tin về giá trị của một số phần tử, và những vị trí bị mất thông tin đều có giá trị là \(0\), nhiệm vụ của bạn là đếm số lượng mảng có thể là mảng ban đầu chưa bị mất thông tin.

Input

  • Dòng đầu tiên chứa hai số nguyên \(N\) và \(M\): kích thước mảng và giới hạn trên cho mỗi giá trị (\(1 \le N \le 10^5\), \(1 \le M \le 100\)).
  • Dòng tiếp theo chứa \(N\) số nguyên \(X_1, X_2, \ldots, X_N\): nội dung của mảng. Giá trị \(0\) biểu thị một giá trị chưa biết.

Output

  • In ra một số nguyên: số lượng mảng modulo \(10^9+7\).

Example

Test 1

Input
3 5
2 0 2
Output
3
Note

Các mảng thỏa mãn ví dụ là \([2, 1, 2]\), \([2, 2, 2]\) và \([2, 3, 2]\).

Bình luận

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