306864: CF1263B. PIN Codes

Memory Limit:256 MB Time Limit:1 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

PIN Codes

题意翻译

### 题意简述 众所周知,PIN 码是由 $4$ 个数码组成的字符串。 现在有 $n$ 个 PIN 码。你可以**多次**修改某些 PIN 码中的一位。问至少需要修改多少次,才能使得所有的 $n$ 个 PIN 码**互不相同**。 ### 输入格式 第一行一个正整数 $(1\leq t \leq 100)$,表示数据的组数。 对于每组数据,第一行一个正整数 $n(2\leq n \leq 10)$,表示 PIN 码的数量。 接下来 $n$ 行,每行一个长度为 $4$ 的字符串 $p_1,p_2,p_3,···,p_n$,表示每一个 PIN 码。保证每一个 PIN 码**均由数字组成**。(PIN 码可能含有前导零 —— 译者注) ### 输出格式 对于每组数据,第一行输出一个整数 $k$ —— 至少需要修改的位数,这样就可以使 $n$ 个 PIN 码互不相同。 接下来 $n$ 行,每行一个长度为 $4$ 的字符串,表示修改后的 PIN 码。**需要按照输入顺序输出。** 翻译贡献者 U108949

题目描述

A PIN code is a string that consists of exactly $ 4 $ 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 $ n $ ( $ 2 \le n \le 10 $ ) bank cards, the PIN code of the $ i $ -th card is $ p_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 $ n $ codes would become different. Formally, in one step, Polycarp picks $ i $ -th card ( $ 1 \le i \le n $ ), then in its PIN code $ p_i $ selects one position (from $ 1 $ to $ 4 $ ), 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?

输入输出格式

输入格式


The first line contains integer $ t $ ( $ 1 \le t \le 100 $ ) — the number of test cases in the input. Then test cases follow. The first line of each of $ t $ test sets contains a single integer $ n $ ( $ 2 \le n \le 10 $ ) — the number of Polycarp's bank cards. The next $ n $ lines contain the PIN codes $ p_1, p_2, \dots, p_n $ — one per line. The length of each of them is $ 4 $ . All PIN codes consist of digits only.

输出格式


Print the answers to $ t $ test sets. The answer to each set should consist of a $ n + 1 $ lines In the first line print $ k $ — the least number of changes to make all PIN codes different. In the next $ n $ 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.

输入输出样例

输入样例 #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

Input

题意翻译

### 题意简述 众所周知,PIN 码是由 $4$ 个数码组成的字符串。 现在有 $n$ 个 PIN 码。你可以**多次**修改某些 PIN 码中的一位。问至少需要修改多少次,才能使得所有的 $n$ 个 PIN 码**互不相同**。 ### 输入格式 第一行一个正整数 $(1\leq t \leq 100)$,表示数据的组数。 对于每组数据,第一行一个正整数 $n(2\leq n \leq 10)$,表示 PIN 码的数量。 接下来 $n$ 行,每行一个长度为 $4$ 的字符串 $p_1,p_2,p_3,···,p_n$,表示每一个 PIN 码。保证每一个 PIN 码**均由数字组成**。(PIN 码可能含有前导零 —— 译者注) ### 输出格式 对于每组数据,第一行输出一个整数 $k$ —— 至少需要修改的位数,这样就可以使 $n$ 个 PIN 码互不相同。 接下来 $n$ 行,每行一个长度为 $4$ 的字符串,表示修改后的 PIN 码。**需要按照输入顺序输出。** 翻译贡献者 U108949

加入题单

算法标签: