Problem · Design

Versioned Snapshot Set

MediumOpenAI logoOpenAIFULLTIMEPHONE SCREEN

Problem statement

Implement a mutable set that can capture immutable snapshots and later return the entire set state stored at a selected snapshot.

Process these operations in input order:

The problem statement continues
Pro

Examples

Example 1

operations = [["ADD","1"],["ADD","3"],["SNAPSHOT"],["REMOVE","3"],["ADD","2"],["GET_SNAPSHOT","0"],["SNAPSHOT"],["GET_SNAPSHOT","1"]]return = [["0"],["1","3"],["1"],["1","2"]]

Snapshot 0 preserves {1, 3} despite later mutations. Snapshot 1 captures {1, 2}.

FastPrep Pro
Reported in 1 OpenAI 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
  • 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 OpenAI 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
  • 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