#pragma GCC optimize ("Ofast")
#include<bits/stdc++.h>
using namespace std;
#define main dummy_main
int main( ) {
return 0 ;
}
#undef main
class Solution{
public :
vector< int > luckyNumbers ( vector< vector< int >> & A) {
int i;
int X = A.size ( ) ;
int Y = A[ 0 ] .size ( ) ;
vector< int > res;
for ( i= ( 0 ) ; i< ( X) ; i++ ) {
int j;
for ( j= ( 0 ) ; j< ( Y) ; j++ ) {
int k;
for ( k= ( 0 ) ; k< ( Y) ; k++ ) {
if ( A[ i] [ j] > A[ i] [ k] ) {
goto Q5VJL1cS;
}
}
for ( k= ( 0 ) ; k< ( X) ; k++ ) {
if ( A[ i] [ j] < A[ k] [ j] ) {
goto Q5VJL1cS;
}
}
res.push_back ( A[ i] [ j] ) ;
Q5VJL1cS:;
}
}
return res;
}
}
;
// cLay varsion 20200325-1
// --- original code ---
// #define main dummy_main
// {}
// #undef main
//
// class Solution {
// public:
// vector<int> luckyNumbers (vector<vector<int>>& A) {
// int X = A.size(), Y = A[0].size();
// vector<int> res;
// rep(i,X) rep(j,Y){
// rep(k,Y) if(A[i][j] > A[i][k]) break_continue;
// rep(k,X) if(A[i][j] < A[k][j]) break_continue;
// res.push_back(A[i][j]);
// }
// return res;
// }
// };
I3ByYWdtYSBHQ0Mgb3B0aW1pemUgKCJPZmFzdCIpCiNpbmNsdWRlPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgbWFpbiBkdW1teV9tYWluCmludCBtYWluKCl7CiAgcmV0dXJuIDA7Cn0KI3VuZGVmIG1haW4KY2xhc3MgU29sdXRpb257CiAgcHVibGljOgogIHZlY3RvcjxpbnQ+IGx1Y2t5TnVtYmVycyAodmVjdG9yPHZlY3RvcjxpbnQ+PiYgQSl7CiAgICBpbnQgaTsKICAgIGludCBYID0gQS5zaXplKCk7CiAgICBpbnQgWSA9IEFbMF0uc2l6ZSgpOwogICAgdmVjdG9yPGludD4gcmVzOwogICAgZm9yKGk9KDApO2k8KFgpO2krKyl7CiAgICAgIGludCBqOwogICAgICBmb3Ioaj0oMCk7ajwoWSk7aisrKXsKICAgICAgICBpbnQgazsKICAgICAgICBmb3Ioaz0oMCk7azwoWSk7aysrKXsKICAgICAgICAgIGlmKEFbaV1bal0gPiBBW2ldW2tdKXsKICAgICAgICAgICAgZ290byBRNVZKTDFjUzsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZm9yKGs9KDApO2s8KFgpO2srKyl7CiAgICAgICAgICBpZihBW2ldW2pdIDwgQVtrXVtqXSl7CiAgICAgICAgICAgIGdvdG8gUTVWSkwxY1M7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJlcy5wdXNoX2JhY2soQVtpXVtqXSk7CiAgICAgICAgUTVWSkwxY1M6OwogICAgICB9CiAgICB9CiAgICByZXR1cm4gcmVzOwogIH0KfQo7Ci8vIGNMYXkgdmFyc2lvbiAyMDIwMDMyNS0xCgovLyAtLS0gb3JpZ2luYWwgY29kZSAtLS0KLy8gI2RlZmluZSBtYWluIGR1bW15X21haW4KLy8ge30KLy8gI3VuZGVmIG1haW4KLy8gCi8vIGNsYXNzIFNvbHV0aW9uIHsKLy8gcHVibGljOgovLyAgIHZlY3RvcjxpbnQ+IGx1Y2t5TnVtYmVycyAodmVjdG9yPHZlY3RvcjxpbnQ+PiYgQSkgewovLyAgICAgaW50IFggPSBBLnNpemUoKSwgWSA9IEFbMF0uc2l6ZSgpOwovLyAgICAgdmVjdG9yPGludD4gcmVzOwovLyAgICAgcmVwKGksWCkgcmVwKGosWSl7Ci8vICAgICAgIHJlcChrLFkpIGlmKEFbaV1bal0gPiBBW2ldW2tdKSBicmVha19jb250aW51ZTsKLy8gICAgICAgcmVwKGssWCkgaWYoQVtpXVtqXSA8IEFba11bal0pIGJyZWFrX2NvbnRpbnVlOwovLyAgICAgICByZXMucHVzaF9iYWNrKEFbaV1bal0pOwovLyAgICAgfQovLyAgICAgcmV0dXJuIHJlczsKLy8gICB9Ci8vIH07Cg==