Ổ khóa ngọc
Đề bài
Mô tả
Một ổ khóa hình vuông có ô lõm xếp thành lưới . Bạn cần đặt vào mỗi ô một viên ngọc mang một chữ số. Có viên ngọc mang các chữ số từ đến (mỗi chữ số xuất hiện đúng một lần), nên bốn viên ngọc được chọn phải mang các chữ số đôi một khác nhau.
Gọi lưới cần điền là:
Trên viền của ổ khóa có ghi số nguyên, quy định các tổng phải khớp:
- : tổng của hàng trên và hàng dưới, tức và .
- : tổng của cột trái và cột phải, tức và .
- : tổng của đường chéo chính và đường chéo phụ, tức và .
Hãy tìm cách đặt bốn viên ngọc thỏa mãn tất cả các điều kiện trên, hoặc cho biết không tồn tại.
Dữ liệu vào
- Dòng đầu chứa hai số nguyên và .
- Dòng thứ hai chứa hai số nguyên và .
- Dòng thứ ba chứa hai số nguyên và .
Dữ liệu ra
Nếu tồn tại cách đặt hợp lệ, in ra hai dòng, mỗi dòng hai số nguyên trong khoảng từ đến mô tả lưới điền được. Nếu không tồn tại, in ra một số duy nhất.
Nghiệm nếu có là duy nhất.
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 3 7 4 6 5 5 |
1 2 3 4 |
Lưới : hàng , ; cột , ; chéo , . Tất cả khớp. |
| 11 10 13 8 5 16 |
4 7 9 1 |
Bốn chữ số khác nhau và mọi tổng hàng/cột/chéo đều đúng. |
| 1 2 3 4 5 6 |
-1 | Không có bộ bốn chữ số phân biệt nào từ đến thỏa mọi ràng buộc. |
| 10 10 10 10 10 10 |
-1 | Muốn mọi tổng bằng thì cần bốn viên ngọc cùng bằng , nhưng mỗi chữ số chỉ có một viên. |
Bình luận