DHBB 2026 - DX38 - 11 - Đếm số đường đi

Xem dạng PDF

Gửi bài giải

Điểm: 40,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout
Test chính thức

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài

Cho một bảng gồm ~m~ hàng và ~n~ cột. Các hàng được đánh số từ ~1~ đến ~m~, các cột từ ~1~ đến ~n~. Mỗi ô trên bảng được xác định bởi cặp tọa độ ~(i, j)~.

Một người bắt đầu di chuyển từ ô ~(1, 1)~ và cần đến ô ~(m, n)~. Tại mỗi bước, người đó chỉ được phép:

  • Đi xuống dưới: từ ~(i, j)~ đến ~(i+1, j)~, hoặc

  • Đi sang phải: từ ~(i, j)~ đến ~(i, j+1)~

Trong bảng tồn tại một vùng cấm có dạng hình chữ nhật, được xác định bởi:

  • Góc trên bên trái: ~(h_1, c_1)~

  • Góc dưới bên phải: ~(h_2, c_2)~

Người di chuyển không được phép đi qua bất kỳ ô nào thuộc vùng này. Đảm bảo rằng: Ô xuất phát ~(1, 1)~ và ô đích ~(m, n)~ không nằm trong vùng cấm.

Yêu cầu: Hãy xác định số lượng đường đi khác nhau từ ~(1, 1)~ đến ~(m, n)~ thỏa mãn các quy tắc trên. Vì kết quả có thể rất lớn, hãy in ra kết quả theo modulo ~10^9+7~.

Input

  • Dòng 1: hai số nguyên ~m, n~ ~(1 \le m, n \le 10^5)~

  • Dòng 2: bốn số nguyên ~h_1, c_1, h_2, c_2~ ~(1 \le h_1 \le h_2 \le m, 1 \le c_1 \le c_2 \le n)~

Output

Một số nguyên duy nhất: số đường đi hợp lệ (mod ~10^9+7~).

Scoring

Subtask Điểm Ràng buộc
1 ~20\%~ ~1 \le m, n \le 10^3~
2 ~30\%~ ~h_1 = h_2~, ~c_1 = c_2~ và ~1 \le m, n \le 10^5~
3 ~50\%~ Không có giới hạn gì thêm

Sample Input 1

3 4
2 2 2 3

Sample Output 1

2

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.