Print maximum number of A’s using given four keys

Give a special keyboard with the following four keys Key 1: Prints 'A' on screen, Key 2: Select screen, Key 3: Copy selection, Key 4: Paste selection on screen after what has already been printed. Given a number N times (with the above four keys), write a program to produce maximum numbers of A's.

Hint

This algorithm aims to determine the most efficient method for generating the letter 'A' repeatedly using a combination of keystrokes. After an initial set of keystrokes, the algorithm compares two approaches:

Iterates through different starting points (from 'n-3' keystrokes down to 0 keystrokes) to identify the optimal number of initial keystrokes that maximizes the occurrence of the letter 'A' when using either of the two approaches. The value '-3' in 'n-3' represents the number of keystrokes required for the initial selection, copying, and pasting operation.

# Python implementation
def count(n):
  if n < 7:
    return n
  
  mx = 0

  for i in range(n - 3, -1, -1):
    mx = max(mx, (n - i - 1) * count(i))

  return mx

n = 7

print(count(n))
// Javascript implementation
function count(n) {
  if (n < 7) {
    return n;
  }

  let max = 0;

  for (let i = n - 3; i >= 0; i--) {
    max = Math.max(max, (n - i - 1) * count(i));
  }

  return max;
}

const n = 7;

console.log(count(n));