测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A10725. Mammoth's Genome Decoding

编程题 普及/提高-

题目描述

The process of mammoth's genome decoding in Berland comes to its end!

One of the few remaining tasks is to restore unrecognized nucleotides in a found chain $s$ . Each nucleotide is coded with a capital letter of English alphabet: 'A', 'C', 'G' or 'T'. Unrecognized nucleotides are coded by a question mark '?'. Thus, $s$ is a string consisting of letters 'A', 'C', 'G', 'T' and characters '?'.

It is known that the number of nucleotides of each of the four types in the decoded genome of mammoth in Berland should be equal.

Your task is to decode the genome and replace each unrecognized nucleotide with one of the four types so that the number of nucleotides of each of the four types becomes equal.

输入格式

The first line contains the integer $n$ ( $4<=n<=255$ ) — the length of the genome.

The second line contains the string $s$ of length $n$ — the coded genome. It consists of characters 'A', 'C', 'G', 'T' and '?'.

输出格式

If it is possible to decode the genome, print it. If there are multiple answer, print any of them. If it is not possible, print three equals signs in a row: "===" (without quotes).

输入输出样例

输入 #1
8
AG?C??CT
输出 #1
AGACGTCT
输入 #2
4
AGCT
输出 #2
AGCT
输入 #3
6
????G?
输出 #3
===
输入 #4
4
AA??
输出 #4
===

说明/提示

In the first example you can replace the first question mark with the letter 'A', the second question mark with the letter 'G', the third question mark with the letter 'T', then each nucleotide in the genome would be presented twice.

In the second example the genome is already decoded correctly and each nucleotide is exactly once in it.

In the third and the fourth examples it is impossible to decode the genom.
上一题 去做题 下一题