#pragma GCC optimize ("Ofast")
#include<bits/stdc++.h>
using namespace std;
#define main dummy_main
int main( ) {
return 0 ;
}
#undef main
class Solution{
public :
int smallestCommonElement( vector< vector< int >> & A) {
int i;
int x;
int y;
map< int ,int > mp;
x = A.size ( ) ;
y = A[ 0 ] .size ( ) ;
for ( i= ( 0 ) ; i< ( x) ; i++ ) {
int j;
for ( j= ( 0 ) ; j< ( y) ; j++ ) {
if ( j && A[ i] [ j] == A[ i] [ j- 1 ] ) {
continue ;
}
if ( ++ mp[ A[ i] [ j] ] == x) {
return A[ i] [ j] ;
}
}
}
return - 1 ;
}
}
;
// cLay varsion 20190921-1
// --- original code ---
// #define main dummy_main
// {}
// #undef main
//
// class Solution {
// public:
// int smallestCommonElement(vector<vector<int>>& A) {
// int x, y;
// map<int,int> mp;
// x = A.size();
// y = A[0].size();
// rep(i,x) rep(j,y){
// if(j && A[i][j] == A[i][j-1]) continue;
// if(++mp[A[i][j]] == x) return A[i][j];
// }
// return -1;
// }
// };
I3ByYWdtYSBHQ0Mgb3B0aW1pemUgKCJPZmFzdCIpCiNpbmNsdWRlPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgbWFpbiBkdW1teV9tYWluCmludCBtYWluKCl7CiAgcmV0dXJuIDA7Cn0KI3VuZGVmIG1haW4KY2xhc3MgU29sdXRpb257CiAgcHVibGljOgogIGludCBzbWFsbGVzdENvbW1vbkVsZW1lbnQodmVjdG9yPHZlY3RvcjxpbnQ+PiYgQSl7CiAgICBpbnQgaTsKICAgIGludCB4OwogICAgaW50IHk7CiAgICBtYXA8aW50LGludD4gbXA7CiAgICB4ID0gQS5zaXplKCk7CiAgICB5ID0gQVswXS5zaXplKCk7CiAgICBmb3IoaT0oMCk7aTwoeCk7aSsrKXsKICAgICAgaW50IGo7CiAgICAgIGZvcihqPSgwKTtqPCh5KTtqKyspewogICAgICAgIGlmKGogJiYgQVtpXVtqXSA9PSBBW2ldW2otMV0pewogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmKCsrbXBbQVtpXVtqXV0gPT0geCl7CiAgICAgICAgICByZXR1cm4gQVtpXVtqXTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIHJldHVybiAtMTsKICB9Cn0KOwovLyBjTGF5IHZhcnNpb24gMjAxOTA5MjEtMQoKLy8gLS0tIG9yaWdpbmFsIGNvZGUgLS0tCi8vICNkZWZpbmUgbWFpbiBkdW1teV9tYWluCi8vIHt9Ci8vICN1bmRlZiBtYWluCi8vIAovLyBjbGFzcyBTb2x1dGlvbiB7Ci8vIHB1YmxpYzoKLy8gICBpbnQgc21hbGxlc3RDb21tb25FbGVtZW50KHZlY3Rvcjx2ZWN0b3I8aW50Pj4mIEEpIHsKLy8gICAgIGludCB4LCB5OwovLyAgICAgbWFwPGludCxpbnQ+IG1wOwovLyAgICAgeCA9IEEuc2l6ZSgpOwovLyAgICAgeSA9IEFbMF0uc2l6ZSgpOwovLyAgICAgcmVwKGkseCkgcmVwKGoseSl7Ci8vICAgICAgIGlmKGogJiYgQVtpXVtqXSA9PSBBW2ldW2otMV0pIGNvbnRpbnVlOwovLyAgICAgICBpZigrK21wW0FbaV1bal1dID09IHgpIHJldHVybiBBW2ldW2pdOwovLyAgICAgfQovLyAgICAgcmV0dXJuIC0xOwovLyAgIH0KLy8gfTsK