CF1263B.PIN Codes
普及/提高-
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
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≤n≤10) bank cards, the PIN code of the i-th card is pi.
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≤i≤n), then in its PIN code pi 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?
PIN码是一个恰好由4位数字组成的字符串。可能的PIN码示例:7013、0000 和 0990。请注意,PIN码可以以任意数字开头,包括0。
Polycarp 有 n(2≤n≤10)张银行卡,其中第 i 张卡的 PIN 码为 pi。
Polycarp 最近阅读了一条建议:在不同银行卡上设置不同的 PIN 码更为安全。因此,他希望修改尽可能少的数字位数,使得全部 n 个 PIN 码互不相同。
形式化地讲,每一步操作中,Polycarp 选择第 i 张卡(1≤i≤n),在其 PIN 码 pi 中选定一个位置(从第 1 位到第 4 位),并将该位置上的数字修改为任意其他数字。他需要使所有 PIN 码互不相同,且修改的数字总位数最少。
Polycarp 很快解决了这个问题。你也能解决吗?
输入格式
The first line contains integer t (1≤t≤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≤n≤10) — the number of Polycarp's bank cards. The next n lines contain the PIN codes p1,p2,…,pn — one per line. The length of each of them is 4. All PIN codes consist of digits only.
第一行包含一个整数 t(1≤t≤100)—— 表示输入中测试用例的数量。随后是各测试用例。
每个测试用例的第一行包含一个整数 n(2≤n≤10)—— 表示 Polycarp 的银行卡数量。接下来的 n 行每行包含一个 PIN 码 p1,p2,…,pn。每个 PIN 码的长度均为 4,且仅由数字组成。
输出格式
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.
输出 t 组测试数据的答案。每组答案应包含 n+1 行:
第一行输出 k —— 使所有 PIN 码互不相同的最少修改次数;
接下来的 n 行按输入中出现的顺序输出修改后的 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测评打分。不知道怎么写?