Reverse String II

EasyTwo PointersString

Solution

import { range } from '@algorithm/lib';
 
export function reverseStr(s: string, k: number): string {
  const reverse = (s: string) => [...s].reverse().join('');
 
  const n = s.length;
  let answer = '';
  for (const i of range(0, n, 2 * k)) {
    answer += reverse(s.substring(i, i + k)) + s.substring(i + k, i + 2 * k);
  }
  return answer;
}