atcoder#AGC055A. [AGC055A] ABC Identity

[AGC055A] ABC Identity

Score : 400400 points

Problem Statement

You are given a string SS of length 3N3N, containing exactly NN letters A, NN letters B, and NN letters C.

Let's call a string TT consisting of letters A, B, and C good, if the following conditions hold:

  • The length of TT is divisible by 33. Let's denote it by 3K3K.
  • T1=T2==TKT_1 = T_2 = \ldots = T_K
  • TK+1=TK+2==T2KT_{K+1} = T_{K+2} = \ldots = T_{2K}
  • T2K+1=T2K+2==T3KT_{2K+1} = T_{2K+2} = \ldots = T_{3K}.
  • Letters T1,TK+1T_1, T_{K+1} and T2K+1T_{2K+1} are different from each other.

Examples of good strings are ABC, BBAACC, and AAACCCBBB.

Find a way to split SS into at most 6 (not necessarily contiguous) subsequences so that the letters from each subsequence form a good string.

It can be proved that, under the constraints of the problem, it's always possible.

Constraints

  • 1N21051 \le N \le 2\cdot 10^5
  • The string SS contains NN letters A, NN letters B, and NN letters C.

Input

Input is given from Standard Input in the following format:

NN

SS

Output

Output a string of length 3N3N, containing only digits from 11 to 66. For every 1i61\le i \le 6 which appears in your string, characters of SS at positions where you output ii have to form a good string. If there are multiple possible solutions, printing any of them will be considered correct.

2
ABCCBA
111222

SS is split into subsequences ABC and CBA, and each of them is a good string.

4
AABCBCAACBCB
111211241244

Positions of 11 form a subsequence AABBCC, positions of 22 form a subsequence CAB, and positions of 44 form a subsequence ACB. All of these strings are good.