Time limit: 1.0s , Memory limit: 256M , Points: 1
Cho ô hàng ngang được đánh số từ
đến
. Cho
đoạn số nguyên, đoạn thứ
có dạng
, không có hai đoạn nào giao nhau. Đang ở vị trí ô thứ
, bạn có thể thực hiện thao tác di chuyển như sau:
- Chọn một số nguyên
sao cho tồn tại một chỉ số
thỏa mãn
, di chuyển đến ô
.
Bạn hãy đếm số cách di chuyển từ ô thứ đến ô thứ
.
Hai đoạn và
được gọi là giao nhau khi và chỉ khi tồn tại một số nguyên
thỏa mãn
và
.
Input
- Dòng đầu tiên chứa hai số nguyên
và
.
dòng tiếp theo, dòng thứ
chứa hai số nguyên
và
mô tả đoạn
.
- Dữ liệu đảm bảo không có hai đoạn nào giao nhau.
Output
- In ra số cách di chuyển từ từ ô thứ
đến ô thứ
, kết quả chia lấy dư cho
.
Examples
Sample Input 1
6 2
3 4
1 1
Sample Output 1
6
Sample Input 2
3 1
2 2
Sample Output 2
1
Notes
Trong ví dụ đầu tiên, có tổng cộng cách di chuyển như sau:
- \(1→2→3→4→5→6\)
- \(1→2→3→6\)
- \(1→2→5→6\)
- \(1→2→6\)
- \(1→4→5→6\)
- \(1→5→6\)
Comments