PracHub
QuestionsCoachesLearningGuidesInterview Prep

Quick Overview

This multi-part question evaluates string manipulation and sequence merging, stateful shortest-path planning under resource constraints (health-aware grid pathfinding), and sliding-window optimization for arrays/strings within the Coding & Algorithms domain.

  • medium
  • Capital One
  • Coding & Algorithms
  • Software Engineer

Solve string merge and grid path tasks

Company: Capital One

Role: Software Engineer

Category: Coding & Algorithms

Difficulty: medium

Interview Round: Take-home Project

##### Question Given two equal-length strings s1 and s2, create a new string by iterating i = 0 … n-1, comparing s1[i] with s2[n-1-i]: append s1[i]; if the two characters are identical append that character again, otherwise append s2[n-1-i]. Examples: s1 = "abc", s2 = "def" → "afcd"; s1 = "abp", s2 = "jda" → "aaaapj"; s1 = "abp", s2 = "abp" → "appa". Return the resulting string. Design an algorithm for a robot moving on a 2-D grid containing: walls (impassable), healing cells (+health), and monster cells (–health). Starting with a given health value, find the shortest path from start to goal such that the robot’s health never drops to 0 or negative. Output that shortest distance (or the path itself). Solve an array/string problem that requires a sliding-window technique to meet a given constraint (details unspecified in the notes).

Quick Answer: This multi-part question evaluates string manipulation and sequence merging, stateful shortest-path planning under resource constraints (health-aware grid pathfinding), and sliding-window optimization for arrays/strings within the Coding & Algorithms domain.

Given two equal-length strings s1 and s2 of length n, build a new string by iterating i from 0 to n-1. Let j = n - 1 - i. Append s1[i] to the result. If s1[i] == s2[j], append that character again; otherwise, append s2[j]. Return the resulting string.

Constraints

  • 0 <= n <= 200000, where n = len(s1) = len(s2)
  • s1 and s2 must have equal length
  • Characters may be any printable ASCII
  • Aim for O(n) time and O(n) extra space

Examples

Input:

Expected Output: afbecd

Input:

Expected Output: aabdpj

Input:

Expected Output: apbbpa

Hints

  1. Use j = n - 1 - i to index s2 from the end while scanning s1 from the start.
  2. Build the result with a list of characters and join at the end for efficiency.
  3. Handle the empty-string case (n = 0) by returning an empty string.
Last updated: May 8, 2026

Loading coding console...

PracHub

Master your tech interviews with 8,500+ real questions from top companies.

Product

  • Questions
  • Learning Tracks
  • Interview Guides
  • Resources
  • Premium
  • For Universities
  • Student Access

Browse

  • By Company
  • By Role
  • By Category
  • Topic Hubs
  • SQL Questions
  • AI Coding Questions
  • Compare Platforms
  • Discord Community

Support

  • support@prachub.com
  • (916) 541-4762

Legal

  • Privacy Policy
  • Terms of Service
  • About Us

© 2026 PracHub. All rights reserved.

Related Coding Questions

  • Solve Four Coding Assessment Tasks - Capital One (medium)
  • Write SQL using joins and window functions - Capital One (medium)
  • Review Preprocessing Code and Tests - Capital One (easy)
  • Remove nodes with a given value - Capital One (medium)
  • Solve multiple algorithmic interview questions - Capital One (hard)