Hiring process8 levels
  1. 1 IQ Test
  2. 2 Additional Online Test (If Required)
  3. 3 Office Interview with Hiring Manager
  4. 4 Unpaid Test Task (Motivation Check)
  5. 5 Paid Test Task and Follow-Up Interview
  6. 6 Iterative Paid Test Tasks
  7. 7 Office Verification
  8. 8 Final Interview with the Founder

Problems > How Often Each Prefix Appears > Editorial

How Often Each Prefix Appears — Solution & Editorial

Back to the Problem

From the prefix function π, each position contributes to prefix π[i]; propagate counts down the failure links (cnt[π[k−1]] += cnt[k]) and add 1 for each prefix's own occurrence.

Complexity: O(|S|)

Watch out: Failure-link counts must be accumulated from long to short prefixes, or shorter prefixes undercount.