THHV 2025 - DX17 - 10 - Đếm số đường đi

Xem dạng PDF

Gửi bài giải

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

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

Bản đồ thành phố XYZ được biểu diễn dưới dạng hệ tọa độ Oxy. Mỗi địa điểm trong thành phố là một điểm nguyên trên bản đồ. Người ta xây dựng các con đường theo nguyên tắc sau: Với mỗi địa điểm ở ô ~(x, y)~ ~(x, y \in \mathbb{Z})~ trên bản đồ:

  • Có đúng ~A~ con đường ~1~ chiều dẫn đến địa điểm ở ô ~(x + 1, y)~;

  • Có đúng ~B~ con đường ~1~ chiều dẫn đến địa điểm ở ô ~(x, y + 1)~;

  • Có đúng ~C~ con đường ~1~ chiều dẫn đến địa điểm ở ô ~(x + 1, y + 1)~.

Yêu cầu: Bạn đang ở địa điểm nằm trên tọa độ ~(0, 0)~ và muốn đến địa điểm nằm trên tọa độ ~(N, M)~. Đếm xem có bao nhiêu cách đi thỏa mãn.

Input

Gồm ~5~ số nguyên ~N, M, A, B, C~ ~(0 \le N, M \le 5 \cdot 10^6; 0 \le A, B, C \le 10^9)~.

Output

Đưa ra một số duy nhất là số lượng cách đi thỏa mãn. Vì kết quả có thể rất lớn nên hãy modulo ~10^9 + 7~.

Scoring

Subtask Điểm Ràng buộc
1 ~20\%~ ~N, M \le 5000~
2 ~20\%~ ~N, M \le 10^5; A = B = 1; C = 0~
3 ~20\%~ ~N, M \le 10^5; C = 0~
4 ~30\%~ ~N, M \le 10^5~
5 ~10\%~ Không có điều kiện gì thêm

Sample Input 1

1 1 1 1 1

Sample Output 1

3

Notes

Có ~3~ đường đi:

  • ~(0,0) \rightarrow (0,1) \rightarrow (1,1)~;

  • ~(0,0) \rightarrow (1,0) \rightarrow (1,1)~;

  • ~(0,0) \rightarrow (1,1)~.


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.