Bảng số C
Đề bài
Mô tả
Xét một bảng kích thước dòng, cột chứa các ô trống và các số tự nhiên trong khoảng từ đến (với ). Bảng số được gọi là -đẹp nếu nó có đủ các tính chất sau:
- Mỗi hàng và mỗi cột chứa đúng ô trống.
- Trên mỗi hàng và mỗi cột, mỗi số () xuất hiện đúng một lần.
- Bắt đầu từ góc trên cùng bên trái, di chuyển sang phải rồi theo hình xoắn ốc vào trong (theo chiều kim đồng hồ), các giá trị tại những ô chứa số sẽ lần lượt xuất hiện theo thứ tự (lặp lại tuần hoàn).
Cho hai số tự nhiên và , hãy tạo ra một bảng -đẹp kích thước , hoặc cho biết không tồn tại.
Dữ liệu vào
Một dòng duy nhất chứa hai số tự nhiên và .
Dữ liệu ra
- Nếu có lời giải, ghi ra dòng, mỗi dòng gồm số được phân tách bởi một dấu cách, biểu diễn bảng tìm được; ô trống được ghi bằng số . Nếu có nhiều lời giải, in ra bất kỳ lời giải đúng nào.
- Nếu không tồn tại lời giải nào, ghi ra giá trị trên một dòng duy nhất.
Ràng buộc
- Subtask 1 ( số điểm): .
- Subtask 2 ( số điểm): .
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 4 2 | 1 2 0 0 0 1 2 0 2 0 0 1 0 0 1 2 |
Mỗi hàng/cột có đúng ô trống và mỗi số xuất hiện đúng một lần. Đọc các ô có số theo hình xoắn ốc cho dãy . |
| 5 3 | 1 2 0 0 3 3 0 1 2 0 2 0 0 3 1 0 3 2 1 0 0 1 3 0 2 |
Mỗi hàng/cột có đúng ô trống; mỗi số xuất hiện đúng một lần. Đọc theo hình xoắn ốc cho dãy |
Ghi chú
Hình xoắn ốc đi theo chiều: từ góc trên trái sang phải hết hàng đầu, xuống hết cột cuối, sang trái hết hàng cuối, lên cột đầu, rồi tiếp tục xoắn vào trong. Chỉ những ô chứa số (khác ) mới được tính vào dãy giá trị xoắn ốc.
Bình luận