Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int Solve(const vector<int>& data) {
- unordered_map<int, int> last_seen;
- unordered_map<int, int> max_waiting_time;
- for (int i = 0; i < data.size(); ++i) {
- int route = data[i];
- if (last_seen.count(route) > 0) {
- max_waiting_time[route] = max(max_waiting_time[route], i - last_seen[route]);
- }
- last_seen[route] = i;
- }
- int ans = 0;
- for (const auto& time : max_waiting_time)
- ans = max(ans, time.second);
- return ans;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement