Nộp bài | Các bài nộp | Làm tốt nhất | Về danh sách bài |
COEDU033 - Tìm kiếm ma trận |
Cho một ma trận vuông A kích thước NxN (5 <= N <= 100) chứa các số nguyên nằm trong khoảng từ 1 đến 1000, số nguyên M (2 <= M <= N-1) là kích thước ma trận con của ma trận A và số nguyên K.
Hãy tìm vị trí bắt đầu của ma trận con có kích thước là MxM trong ma trận A sao cho tổng tất cả các số trong ma trận con có giá trị gần nhất với số nguyên K. Nếu có 2 vị trí thỏa mãn thì lấy vị trí ma trận con có tổng nhỏ hơn. Nếu có 2 ma trận con có cùng tổng thì lấy ma trận con có chỉ số hàng nhỏ hơn, nếu có 2 ma trận cùng hàng thỏa mãn thì lấy ma trận có chỉ số cột nhỏ hơn.
Ví dụ: số nguyên K = 50, ta có 2 tổng của ma trận con là 25 và 75 thì ta sẽ in vị trí của ma trận có tổng là 25.
Nếu tổng của cả 2 ma trận đều là 25, nhưng một ma trận có chỉ số tọa độ điểm bắt đầu là (3,4), một ma trận có chỉ số tọa độ bắt đầu là (3,5) thì in vị trí (3,4).
Input
Dòng đầu tiên của input chứa số test case.
Các dòng tiếp theo sẽ chứa thông tin của test case, trong đó:
- Dòng đầu tiên của mỗi test case là 3 số lần lượt là N, M, K.
- N dòng tiếp theo là dữ liệu của ma trận A.
Output
In ra kết quả là vị trí bắt đầu của ma trận thỏa mãn (vị trí bắt đầu là vị trí nằm ở trên cùng bên trái của ma trận con) theo dạng “#tc x y”.
Trong đó:
tc: số thứ tự của test case.
x: là số thứ tự của hang trong ma trận A.
y: là số thứ tự của cột trong ma trận A.
Example
Input: 1 6 2 31500 616 610 65 167 894 75 510 301 696 574 590 162 173 969 359 32 269 427 511 423 775 780 911 553 183 392 496 765 875 365 903 256 461 475 973 822 Output: #1 3 3
Được gửi lên bởi: | Phòng đào tạo Coedu |
Ngày: | 2022-12-13 |
Thời gian chạy: | 1s |
Giới hạn mã nguồn: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Ngôn ngữ cho phép: | C C++ 4.3.2 CPP JAVA |