Lễ hội đường phố
Xem dạng PDF
Gửi bài giải
Điểm:
1,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Dạng bài
Cuộc sống thay đổi, một số lễ hội bị rơi vào lãng quên và được thay thế bởi những lễ hội mới. Tin học phát triển đã làm xuất hiện lễ hội đường phố Tin học. Dẫn đầu đoàn diễu hành là dàn nhạc đánh trống và thổi kèn. Ban tổ chức sắp xếp một khối diễu hành gồm ~n~ hàng, mỗi hàng có ~n~ người. Mỗi người mặc áo phông có in một số nguyên tố không vượt quá ~10^7~ ở sau lưng.
Yêu cầu
Hãy bố trí các số nguyên tố vào bảng ~n \times n~ sao cho đồng thời thỏa mãn:
- Trong toàn khối có đúng ~k~ số nguyên tố khác nhau.
- Gọi tích các số trên áo ở hàng ~i~ là ~R_i~, và ở cột ~j~ là ~C_j~. Khi đó số lượng ước số của ~R_i~ là như nhau với mọi ~i~, và cũng bằng số lượng ước số của ~C_j~ với mọi ~j~.
Nếu không tồn tại cách bố trí, in ra ~-1~. Nếu có nhiều cách, in ra bất kỳ một cách.
Dữ liệu
Một dòng chứa hai số nguyên ~k~ và ~n~ (~1 \le k \le 10^9~, ~1 \le n \le 1000~).
Kết quả
- Nếu không có cách bố trí, in ra một dòng chứa ~-1~.
- Ngược lại, in ra ~n~ dòng, mỗi dòng gồm ~n~ số nguyên tố (không vượt quá ~10^7~) mô tả cách bố trí.
Ví dụ
Ví dụ 1
Input
2 3
Output
2 3 2
3 2 3
2 3 2
Giải thích
Ví dụ 1
Trong cách in trên, toàn bộ bảng dùng đúng ~2~ số nguyên tố là ~2~ và ~3~.
- Mỗi hàng/cột có tích dạng ~2^2 \cdot 3^1~ (hoặc hoán vị), nên số ước của tích là ~(2+1)(1+1)=6~, như nhau cho mọi hàng và mọi cột.
Ràng buộc và chấm điểm
Ràng buộc
- ~1 \le k \le 10^9~
- ~1 \le n \le 1000~
- Mỗi ô là một số nguyên tố ~\le 10^7~
- Toàn bảng có đúng ~k~ số nguyên tố phân biệt
Bình luận