#P1490. Cabinets

Cabinets

题目描述

Well-Built Cabinet Distributors公司最近收到了其主要制造商Woodcraft的电子橱柜目录。不幸的是,数据格式与Well-Built的库存软件预期的不一致。本题要求编写程序,将Woodcraft的目录重新格式化以适配库存软件。

输入格式

输入包含多个测试用例,相邻用例间有一个空行。输入为逗号分隔的ASCII文件,每行最长64字符,包含以下字段:

字段 长度 说明
风格代码 1-3 橱柜风格的代码
风格名称 0-15 橱柜风格的名称
描述 1-15 描述橱柜类型的代码
扩展信息 0-25 橱柜的附加信息
单位价格 0-6 制造商建议零售价(美元×100)

记录按风格代码升序排列。所有字段符合给定长度,且字符合法。

输出格式

输出为重新格式化的目录,也是逗号分隔的ASCII文件。首行必须为:
Item Id,Item Desc,Item Price

后续每行最长50字符,包含以下字段:

字段 长度 说明
商品ID 4-13 库存数据库的唯一标识码
商品描述 1-30 橱柜的库存描述
商品价格 4-7 制造商建议零售价

字段处理规则

  1. 商品ID(Item Id)

    • 由风格代码和描述拼接而成。若风格代码不足3位,左侧补零至3位。若拼接后长度超过13位,则拒绝该记录。
  2. 商品描述(Item Desc)

    • 由风格名称、连字符“-”和扩展信息拼接而成。
    • 若风格名称缺失,使用对应风格代码组首条记录的风格名称;若首条记录也无风格名称,则拒绝该记录。
    • 若扩展信息缺失,商品描述等于风格名称(无连字符)。
    • 若商品描述超过30位,右侧截断。
  3. 商品价格(Item Price)

    • 单位价格转换为“美元.美分”格式。若单位价格缺失,价格为0.00

输入样例

23,CHAMPAGNE,BASE36,3" RECESSED TOE KICK,8900 
23,,BASE54,,11000
25,LAUREL,CNR24LT,,15000 
107,COLONIAL,BASE54WSIDEJAM
202,SAGEBRUSH,OVRHD54P,USE WITH HDWARE KIT #3207 
221,ALVEA MODERN,BASE36
221,ALVEA MODERN,OVRHD54WCAP

输出样例

Item Id,Item Desc,Item Price
023BASE36,CHAMPAGNE-3" RECESSED TOE KICK,89.00 
023BASE54,CHAMPAGNE,110.00 
025CNR24LT,LAUREL,150.00
202OVRHD54P,SAGEBRUSH-USE WITH HDWARE KIT ,0.00 
221BASE36,ALVEA MODERN,0.00

来源

1994年中东欧区域竞赛(East Central North America 1994)