trang chủ / bài tập / kspectab

Bảng K-đặc biệt

Đề bài

Mô tả

Một bảng vuông kích thước N×N được gọi là K-đặc biệt nếu thỏa mãn cả ba điều kiện sau:

  • Mỗi số nguyên từ 1 đến N2 xuất hiện đúng một lần trong bảng.
  • Các số trên mỗi hàng được sắp xếp theo thứ tự tăng dần từ trái sang phải.
  • Tổng các số ở cột thứ K là lớn nhất có thể.

Hàng và cột được đánh số từ 1 đến N, hàng từ trên xuống dưới và cột từ trái sang phải.

Cho NK, hãy tìm một bảng K-đặc biệt bất kỳ.

Dữ liệu vào

Một dòng duy nhất chứa hai số nguyên NK.

Dữ liệu ra

Dòng đầu tiên in ra tổng các số ở cột thứ K của bảng tìm được.

N dòng tiếp theo mô tả bảng: dòng thứ i chứa N số nguyên là các phần tử của hàng thứ i.

Nếu có nhiều bảng thỏa mãn, in ra bảng bất kỳ.

Ràng buộc

  • 1N500
  • 1KN

Ví dụ

Input Output Giải thích
4 1 28
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
Với K=1, cột đầu tiên của mỗi hàng buộc phải là số nhỏ nhất của hàng đó. Bảng xếp theo thứ tự tự nhiên cho tổng cột 1 bằng 1+5+9+13=28, và đây là giá trị lớn nhất.
5 3 85
1 2 11 12 13
3 4 14 15 16
5 6 17 18 19
7 8 20 21 22
9 10 23 24 25
Mười số nhỏ nhất 110 bị "nhốt" vào hai cột đầu, nhờ đó cột 3 nhận được 11,14,17,20,23 với tổng 85. Không có cách xếp nào cho tổng lớn hơn.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0