当前你的浏览器版本过低,网站已在兼容模式下运行,兼容模式仅提供最小功能支持,网站样式可能显示不正常。
请尽快升级浏览器以体验网站在线编辑、在线运行等功能。

建议使用的浏览器:

谷歌Chrome 火狐Firefox Opera浏览器 微软Edge浏览器 QQ浏览器 360浏览器 傲游浏览器

4167:User Names

题目描述
A university's computer system assigns user names according to the following set of rules:

The maximum length of a username is MAXLEN characters. (The value of MAXLEN will be specified in the input for each problem instance.)
The first character of the user name is the first letter of the person's first name, converted to lower case. Ignore apostrophes and hyphens here and in Step 3.
Append as many letters of the person's last name as possible (converted to lower case, if necessary), without exceeding a total of MAXLEN characters. Starting with the first letter of the last name, append these letters in the order in whch they appear in the last name.
If a user name assigned on basis of Rules 1 - 3 already exists in the database, break the tie as follows: append serial numbers 1 - 9, in that order, to the username from step 3, if that can be done without exceeding the limit of MAXLEN characters in the username. Otherwise, drop the last letter before appending the serial number.
If a user name assigned on basis of Rules 1 - 4 already exists in the database, break the tie as follows: append serial numbers 10 - 99, in that order, to the username from step 3, if that can be done without exceeding the limit of MAXLEN characters in the username. Otherwise, drop the last letter or the last two letters (whichever is necessary) before appending the serial number.
It is assumed that the above rules will avoid ties.
输入解释
The input will contain data for a number of test cases. The first line of each test case will contain two positive integers: the number of names and the value of MAXLEN (5 <= MAXLEN <= 80). This will be followed by the list of names. Each name will consist of at most 80 characters and will begin with the first name, followed by middle names, if any, and will conclude with the last name. A single blank space will separate first, middle, and last names. Any name can contain upper and lower case letters, hyphens, and apostrophes. A last name will contain at least two letters, other names will contain at least one letter (they could be just initials). There will be no more than 200 names in each case. The last test case will be followed by a line containing two zeros for the number of names and MAXLEN.
输出解释
For each case, the output will begin with a line containing the case number. This will be followed by the list of user names, one per line, in the same order as the corresponding names in the input.
输入样例
2 6
Jenny Ax
Christos H Papadimitriou
11 8 
Jean-Marie d'Arboux
Jean-Marie A d'Arboux
Jean-Marie B d'Arboux
Jean-Marie C d'Arboux
Jean-Marie D d'Arboux
Jean-Marie D d'Arboux
Jean-Marie F d'Arboux
Jean-Marie G d'Arboux
Jean-Marie H d'Arboux
Jean-Marie I d'Arboux
Jean-Marie J d'Arboux
11 9 
Jean-Marie d'Arboux
Jean-Marie A d'Arboux
Jean-Marie B d'Arboux
Jean-Marie C d'Arboux
Jean-Marie D d'Arboux
Jean-Marie D d'Arboux
Jean-Marie F d'Arboux
Jean-Marie G d'Arboux
Jean-Marie H d'Arboux
Jean-Marie I d'Arboux
Jean-Marie J d'Arboux
0 0
输出样例
Case 1
jax
cpapad
Case 2
jdarboux
jdarbou1
jdarbou2
jdarbou3
jdarbou4
jdarbou5
jdarbou6
jdarbou7
jdarbou8
jdarbou9
jdarbo10
Case 3
jdarboux
jdarboux1
jdarboux2
jdarboux3
jdarboux4
jdarboux5
jdarboux6
jdarboux7
jdarboux8
jdarboux9
jdarbou10
来自杭电HDUOJ的附加信息
Recommend lcy

该题目是Virtual Judge题目,来自 杭电HDUOJ

源链接: HDU-4167

最后修改于 2020-10-25T23:10:53+00:00 由爬虫自动更新

共提交 0

通过率 --%
时间上限 内存上限
8000/4000MS(Java/Others) 32768/32768K(Java/Others)