Bài 3. Tìm cặp số (HSG 9 Hải Phòng 2025-2026)

Xem PDF




Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 1100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Cho số nguyên dương \(S\) và ma trận \(A\)\(m\) hàng, \(n\) cột. Ở giao giữa hàng \(i\) \((i = 1..m)\) và cột \(j\) \((j = 1..n)\) có số nguyên dương \(a_{ij}\) \((a_{ij} \le 10^9)\).

Yêu cầu: Tìm tổng lớn nhất của \(2\) phần tử ở \(2\) vị trí khác nhau trong ma trận \(A\) sao cho tổng này không lớn hơn số nguyên dương \(S\).

Input

  • Dòng đầu tiên có \(3\) số nguyên dương \(m, n, S\).
    • \(m, n \le 10^3\)
    • \(S \le 2 \cdot 10^9\)
  • \(m\) dòng tiếp theo, mỗi dòng có \(n\) số nguyên dương không vượt quá \(10^9\).
  • Các số trên cùng một dòng được viết cách nhau bởi dấu cách trống.

Output

  • Ghi ra một dòng là tổng lớn nhất tìm được theo yêu cầu. Nếu không tìm được \(2\) phần tử theo yêu cầu thì in ra \(-1\).

Example

Test 1

Input
1 4 17
1 9 7 11
Output
16

Test 2

Input
2 4 7
1 2 2 3
3 3 7 2
Output
6

Test 3

Input
3 4 10
6 7 8 9
5 6 7 8
9 8 8 7
Output
-1

Scoring

  • Subtask \(1\) (\(20\%\) số điểm): Dữ liệu vào có \(m = 1\).
  • Subtask \(2\) (\(30\%\) số điểm): Dữ liệu vào có \(m, n \le 10^2\).
  • Subtask \(3\) (\(50\%\) số điểm): Không có ràng buộc nào thêm.

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.