CF1263B.PIN Codes

普及/提高-

通过率:0%

时间限制:1.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

A PIN code is a string that consists of exactly 44 digits. Examples of possible PIN codes: 7013, 0000 and 0990. Please note that the PIN code can begin with any digit, even with 0.

Polycarp has nn (2≤n≤102 \le n \le 10) bank cards, the PIN code of the ii-th card is pip_i.

Polycarp has recently read a recommendation that it is better to set different PIN codes on different cards. Thus he wants to change the minimal number of digits in the PIN codes of his cards so that all nn codes would become different.

Formally, in one step, Polycarp picks ii-th card (1≤i≤n1 \le i \le n), then in its PIN code pip_i selects one position (from 11 to 44), and changes the digit in this position to any other. He needs to change the minimum number of digits so that all PIN codes become different.

Polycarp quickly solved this problem. Can you solve it?

PIN码是一个恰好由4位数字组成的字符串。可能的PIN码示例:7013、0000 和 0990。请注意,PIN码可以以任意数字开头,包括0。

Polycarp 有 nn(2≤n≤102 \le n \le 10)张银行卡,其中第 ii 张卡的 PIN 码为 pip_i。

Polycarp 最近阅读了一条建议:在不同银行卡上设置不同的 PIN 码更为安全。因此,他希望修改尽可能少的数字位数,使得全部 nn 个 PIN 码互不相同。

形式化地讲,每一步操作中,Polycarp 选择第 ii 张卡(1≤i≤n1 \le i \le n),在其 PIN 码 pip_i 中选定一个位置(从第 1 位到第 4 位),并将该位置上的数字修改为任意其他数字。他需要使所有 PIN 码互不相同,且修改的数字总位数最少。

Polycarp 很快解决了这个问题。你也能解决吗?

输入格式

The first line contains integer tt (1≤t≤1001 \le t \le 100) — the number of test cases in the input. Then test cases follow.

The first line of each of tt test sets contains a single integer nn (2≤n≤102 \le n \le 10) — the number of Polycarp's bank cards. The next nn lines contain the PIN codes p1,p2,…,pnp_1, p_2, \dots, p_n — one per line. The length of each of them is 44. All PIN codes consist of digits only.

第一行包含一个整数 tt(1≤t≤1001 \le t \le 100)—— 表示输入中测试用例的数量。随后是各测试用例。

每个测试用例的第一行包含一个整数 nn(2≤n≤102 \le n \le 10)—— 表示 Polycarp 的银行卡数量。接下来的 nn 行每行包含一个 PIN 码 p1,p2,…,pnp_1, p_2, \dots, p_n。每个 PIN 码的长度均为 44,且仅由数字组成。

输出格式

Print the answers to tt test sets. The answer to each set should consist of a n+1n + 1 lines

In the first line print kk — the least number of changes to make all PIN codes different. In the next nn lines output the changed PIN codes in the order corresponding to their appearance in the input. If there are several optimal answers, print any of them.

输出 tt 组测试数据的答案。每组答案应包含 n+1n + 1 行:

第一行输出 kk —— 使所有 PIN 码互不相同的最少修改次数;
接下来的 nn 行按输入中出现的顺序输出修改后的 PIN 码。
若存在多个最优解,输出任意一个即可。

输入输出样例

  • 输入#1

    3
    2
    1234
    0600
    2
    1337
    1337
    4
    3139
    3139
    3139
    3139

    输出#1

    0
    1234
    0600
    1
    1337
    1237
    3
    3139
    3138
    3939
    6139

输入解题思路,AI测评打分。不知道怎么写?

首页