# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
486304 | 2021-11-11T08:19:44 Z | NintsiChkhaidze | CONSUL (info1cup19_consul) | C++14 | 0 ms | 0 KB |
#include <bits/stdc++.h> #include "grader.hpp" using namespace std; int kth(int k); void say_answer(int k); int cnt(int k); map <int,int> mp; void solve(int n){ if (n<=50){ mp.clear(); for (int i = 1; i <= n; i++){ int val = kth(i); mp[val]++; if (mp[val] > n/3){ say_answer(val); return; } } say_answer(-1); return; } set <int> st; st.clear(); for (int i = 1; i <= n; i++){ int val = kth(i); if (st.find(val)!=st.end()) continue; st.insert(val); if (cnt(val) > n/3){ say_answer(val); return; } } say_answer(-1); }