trang chủ / đề bài / icpc25_reg_d

Bảng chia hết

Đề bài

Mô tả

Cho hai số nguyên r, c và một số nguyên lẻ k. Xét một bảng gồm r hàng và c cột. Bạn muốn điền các số nguyên vào bảng này.

Một cách điền bảng được gọi là hợp lệ nếu thỏa mãn cả hai điều kiện sau:

  • mỗi ô chứa một số nguyên từ 1 đến r·c;
  • mỗi số nguyên từ 1 đến r·c xuất hiện trong bảng đúng một lần.

Một đoạn chia hết trong bảng là một dãy gồm k ô liên tiếp nằm trên cùng một hàng hoặc cùng một cột sao cho tổng các số trong các ô này chia hết cho k.

Trong tất cả các cách điền hợp lệ, hãy tìm một cách điền bất kỳ có số đoạn chia hết lớn nhất.

Dữ liệu vào

Dòng đầu tiên chứa số nguyên τ (1≤τ≤104): số bộ dữ liệu. Tiếp theo là τ bộ dữ liệu, mỗi bộ gồm một dòng chứa ba số nguyên r, c và k (1≤r,c≤50; 1≤k≤min{r,c}; k lẻ).

Dữ liệu đảm bảo tổng r·c qua tất cả các bộ dữ liệu không vượt quá 104.

Dữ liệu ra

Với mỗi bộ dữ liệu, in ra r dòng, mỗi dòng gồm c số, biểu diễn một cách điền tối ưu.

Nếu có nhiều đáp án, in ra một đáp án bất kỳ.

Ràng buộc

  • 1≤τ≤104.
  • 1≤r,c≤50.
  • 1≤k≤min{r,c}, k lẻ.
  • Tổng r·c qua tất cả các bộ dữ liệu không vượt quá 104.

Ví dụ

Input Output Giải thích
2
3 2 1
3 3 3
4 5
6 2
3 1
6 2 1
9 8 7
3 5 4
Ở bộ dữ liệu thứ nhất, vì k=1 nên mọi cách điền hợp lệ đều có cùng số đoạn chia hết. Ở bộ dữ liệu thứ hai, số đoạn chia hết lớn nhất là 6.
2
4 5 3
5 3 3
1 14 9 13 5
6 19 2 12 7
20 18 10 17 3
16 8 15 4 11
1 14 3
13 11 6
10 2 15
7 8 12
4 5 9
Ví dụ bổ sung (không có trong đề gốc). Ở bộ dữ liệu thứ nhất, cả 4·3=12 đoạn trên các hàng và 5·2=10 đoạn trên các cột đều chia hết cho 3, tổng cộng 22 đoạn chia hết. Ở bộ dữ liệu thứ hai, cả 5 đoạn trên các hàng và 9 đoạn trên các cột đều chia hết cho 3.

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.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0