TENGO EL SIGUIENTE PROBLEMA:
Una fábrica, vende varios tipos de disco duros a diferentes clientes fijos mensualmente. Samanta trabaja en el área administrativa de la fábrica, y entre otras cosas, debe entregar a su jefe, un reporte donde se indique los discos vendidos a cada uno de los clientes, incluyendo los subtotales por cliente y por disco, como sigue:
Disco 1 Disco 2 Disco 3 … Disco n Subtotal
Cliente 1
Cliente 2
.
.
.
Cliente m-1
Cliente m
Total
Samanta ha tenido mucho trabajo últimamente. Ella es muy dispersa, y al sacar el reporte que debe entregar mensualmente, todos los datos numéricos y alfabéticos quedaron agrupados sin espacios entre ellos, por lo cual no se puede diferenciar la cantidad de discos vendidos a cada cliente, ni el subtotal de cada disco.
La entrada consiste en dos enteros N y M, con 1<=N=7, y 1<=M<=10, seguido de los N nombres de los posibles discos que se vendieron en el mes (uno por línea), y las M+2 líneas correspondientes al reporte. Asuma que cada línea no tiene más de 1000 caracteres. Tu trabajo consiste en reparar el formato del reporte que Samanta debe entregar. Puede darse el caso en el cual exista más de una solución, en cuyo caso de deben imprimir todas las soluciones posibles, separadas por una línea en blanco.
A continuación, se encuentra un reporte de ejemplo que Samanta ha generado por error (Entrada), y la salida deseada (Salida).
Entrada:
5
5
SAMSUNG_1TB
HP_SERIAL_ATA_250GB
SAMSUNG_250GB_SATA
MAXTOR_1TB_DIAMONMAX
HD_120GB_IDE
SAMSUNG_1TBHP_SERIAL_ATA_250GBHD_120GB_IDESAMSUNG_ 250GB_SATAMAXTOR_1TB_DIAMONMAXSubtotal
CompuMall1002010002503001670
TodoCompu201050015035715
PCD405281105200478
MercadoLibre0010005004551955
EmpresaNueva000000
Total16082258110059904818
Salida:
SAMSUNG_1TB HP_SERIAL_ATA_250GB HD_120GB_ID SAMSUNG_250GB _SATA MAXTOR_1TB_DIAMONMAX Subtotal
CompuMall 100 20 1000 250 300 1670
TodoCompu 20 10 500 150 35 715
PCD 40 52 81 105 200 478
MercadoLibre 0 0 1000 500 455 1955
EmpresaNueva 0 0 0 0 0 0
Total 160 82 2581 1005 990 4818
Ahi esta, no tengo minima idea de como empezar o que hacer. Creo q trabajar con dos archivos el de entrada y el salida ordenado, pero, como comienzo?
Gracias.