Problem matrice


Fie A o matrice dreptunghiulară de numere întregi cu N linii numerotate de la 1 la N şi M coloane numerotate de la 1 la M. În matricea A oricare două elemente consecutive de pe aceeaşi linie sunt distincte.

Se defineşte un şir valid de numere întregi ca fiind fie un şir crescător, fie un şir descrescător, fie un şir crescător concatenat cu un şir descrescător, fie un şir descrescător concatenat cu unul crescător. Exemple de şiruri valide sunt: 1 2 3 7, 8 5 2 1, 3 5 6 2, 4 1 5 6.

Se defineşte o submatrice a lui A de coordonate (\(l_1, c_1, l_2, c_2\)) ca fiind matricea formată din toate elementele A(i,j), cu \(l_1 ≤ i ≤ l_2\) şi \(c_1 ≤ j ≤ c_2\).

O submatrice a lui A este validă dacă liniile sale sunt şiruri valide.

Atenţie! O submatrice validă poate avea pe o linie un şir crescător de numere, pe a doua un şir descrescător, pe a treia un şir crescător concatenat cu unul descrescător etc. Deci, liniile unei submatrici valide nu trebuie să fie neapărat şiruri de acelaşi tip.

Aria unei submatrici este egală cu numărul de elemente din care este formată submatricea.

Cerinţă

Se cere să se găsească o submatrice validă a lui A de arie maximă.

Date de intrare

Pe prima linie a fişierului de intrare matrice.in se află numerele N şi M, separate prin spaţiu.
Pe fiecare dintre următoarele N linii se află câte M numere întregi separate prin câte un spaţiu, reprezentând elementele matricii A.

Date de ieşire

Fişierul de ieşire matrice.out va conţine o singură linie pe care vor fi scrise coordonatele \(l_1, c_1, l_2, c_2\) (în această ordine şi separate prin câte un spaţiu) ale unei submatrici valide de arie maximă. În cazul în care există mai multe soluţii cu arie maximă, se va afişa oricare dintre ele.

Restricţii

  • 1 ≤ N, M ≤ 1000
  • 70% din teste vor avea N, M ≤ 600
  • Elementele matricii A sunt numere întregi din intervalul [-30000, 30000].

Exemplu

matrice.in

2 6
1 2 5 7 9 10
3 4 3 5 1 10

matrice.out

1 1 2 3

Explicații

Aria maximă este 6. O altă soluţie de arie maximă ar putea fi
1 1 1 6 sau 1 2 2 4 sau 1 3 2 5 sau 1 4 2 6.

General info

ID: 88

Upload: liviu

Input: matrice.in/matrice.out

Memory limit: 16MB/1MB

Time limit: 0.2s

Author: Tiberiu Dăneţ

Source: ONI 2006 XI-XII: Ziua 2, Problema 2

Submissions

Special Submissions