Deduplicate Logs: Keep First
Problem statement
You are given log entries in encounter order. The ith entry is the pair (timestamps[i], messages[i]). Two entries are duplicates when their messages are equal.
For each distinct message, keep only its first encountered entry. This means the earliest array position wins, even if a later duplicate has a smaller timestamp.
Examples
Example 1
timestamps = [30,10,20,15,20]messages = ["cache miss","user login","cache miss","heartbeat","user login"]return = ["10|user login","15|heartbeat","30|cache miss"]The first encountered entries for cache miss, user login, and heartbeat have timestamps 30, 10, and 15. The later duplicates are discarded, even though the later cache miss has a smaller timestamp. Sorting the three retained pairs gives the result.
Unlock this recently reported problem
FastPrep Pro gives you full access to interview problems reported within the last week.
- Full problem statement and constraints
- 2 more worked examples, explained
- Guided hints and editorial
- Run your code on real test cases
Pro subscription, billed yearly — or $19 month-to-month. Cancel anytime.