Đường đi trên lưới
Đề bài
Mô tả
Cho một lưới ô vuông gồm dòng và cột. Các dòng được đánh số từ đến từ trên xuống dưới, các cột được đánh số từ đến từ trái qua phải. Ô nằm ở vị trí dòng và cột của lưới được gọi là ô và khi đó, được gọi là tọa độ dòng còn được gọi là tọa độ cột của ô này. Trên ô của lưới ghi số nguyên dương , ; . Trên lưới đã cho, từ ô ta có thể di chuyển đến ô nếu các điều kiện sau đây được thỏa mãn:
- ; ; và ;
- và có ước số chung lớn hơn .
Ta gọi một cách di chuyển từ mép trái sang mép phải của lưới là cách di chuyển bắt đầu từ một ô có tọa độ cột bằng qua các ô của lưới theo qui tắc di chuyển đã nêu và kết thúc ở một ô có tọa độ cột bằng .
Yêu cầu: Tính số cách di chuyển từ mép trái lưới sang mép phải lưới.
Dữ liệu vào
- Dòng đầu tiên ghi số nguyên dương , .
- Dòng thứ trong số dòng tiếp theo ghi số nguyên dương là các số trên dòng thứ của lưới, .
Hai số liên tiếp trên cùng một dòng được ghi cách bởi ít nhất một dấu cách.
Dữ liệu ra
Ghi ra số nguyên là phần dư của số lượng cách di chuyển tìm được cho .
Ràng buộc
- .
- .
Subtasks
- Subtask 1 ( số test): .
- Subtask 2 ( số test): không có ràng buộc gì thêm.
Mỗi subtask gồm nhiều test, mỗi test được chấm điểm riêng.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 2 2 2 4 6 8 |
4 | Mọi cặp số đều có ước chung . Các cách: ; ; ; . |
| 2 2 2 5 6 7 |
0 | Số và ở cột không có ước chung lớn hơn với ô nào ở cột . |
Bình luận