Problem · Array

Deduplicate Logs: Keep First

EasyGoogleONSITE INTERVIEW
See Google hiring insights

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.

The problem statement continues
Pro

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.

FastPrep Pro
Reported in 1 Google interview this week

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
$9/month

Pro subscription, billed yearly — or $19 month-to-month. Cancel anytime.

Free plan — 2 of 2 free unlocks used this week
CodePython 3
Run and Submit unlock with Pro
FastPrep Pro
Reported in 1 Google interview this week

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
$9/month

Pro subscription, billed yearly — or $19 month-to-month. Cancel anytime.

Free plan — 2 of 2 free unlocks used this week