Limited time: AI code review, hints, mock interviews, whiteboard analysis, and all Pro features are unlocked. Enroll

Longest Duplicate Substring

Hard

Topics
StringBinary SearchSuffix ArrayRolling Hash

Given a string s, consider all duplicated substrings: (contiguous) substrings that occur two or more times (the occurrences may overlap). Return the longest such substring; if there are several of the maximum length, return the lexicographically smallest one. If none exists, return "".

Example 1

Input:  s = "banana"
Output: "ana"

Example 2

Input:  s = "abcd"
Output: ""

Example 3

Input:  s = "aaaa"
Output: "aaa"

Constraints

  • 1 <= s.length <= 16
  • s consists of lowercase English letters.
Run ⌘' · Submit ⌘⏎
SensAI SensAI
Beta
Listening...
Tap mic to stop voice mode

Unlock AI Features

One click to activate - no payment, no credit card. Just sign in and you're in.

AI code review and hints
SensAI chat assistant
AI mock interviews
Whiteboard analysis
100% free during early access