// TLE嘘(逆順) # pragma GCC optimize("O3") # pragma GCC optimize("unroll-loops") #include using namespace std; using Clock = std::chrono::steady_clock; random_device seed; mt19937 mt(seed()); int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int N; if (!(cin >> N)) return 0; vector v(N); for (int i = 0; i < N; ++i) { int a, b; cin >> a >> b; v[i] = (a << 10) | b; } const auto start = Clock::now(); const auto LIMIT = std::chrono::milliseconds(1950); // 1.9 秒 shuffle(v.begin(), v.end(), mt); for (int i = N - 1; i >= 0; --i) { for (int j = i - 1; j >= 0; --j) { if (v[i] == v[j]) { // 同じ誕生月・誕生日を発見 cout << "Yes\n"; return 0; } } // 外側ループごとに時間チェック if (Clock::now() - start > LIMIT) { cout << "No\n"; // 1.9 秒以内に見つからず → 打ち切り return 0; } } // 全探索完了(重複なし) cout << "No\n"; return 0; }