#include #ifdef BUG #include "debug.hpp" #else #define DEBUG(var) #endif using namespace std; template< class T1, class T2 > inline istream & operator>>( istream & fin, pair< T1, T2 > & pr ) { fin >> pr.first >> pr.second; return fin; } template< class T0, class T1, class T2 > inline istream & operator>>( istream & fin, tuple< T0, T1, T2 > & t ) { fin >> get<0>(t) >> get<1>(t) >> get<2>(t); return fin; } template< class T > inline istream & operator>>( istream & fin, vector< T > & a ) { for(auto & u: a) fin >> u; return fin; } template inline istream & operator>>( istream & fin, array & a ) { for(auto & u: a) fin >> u; return fin; } template inline auto dump(FwdIter first, FwdIter last, const char * dlm) -> void { typedef typename iterator_traits::value_type value_type; copy(first, last, ostream_iterator(cout, dlm)); } /* @@@ ----------------------------------- */ const char * probA() { size_t n; cin >> n; vector> a(n); cin >> a; { bool fail = false; for(const auto & pr: a) fail = fail || pr.first != a[0].first; if(!fail) return "YES"; } { bool fail = false; for(const auto & pr: a) fail = fail || pr.second != a[0].second; if(!fail) return "YES"; } return "NO"; } int main(const int argc, char * argv []) { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); cout << probA(); return EXIT_SUCCESS; }