2. Incidències

Una fàbrica disposa d’una llista amb informació sobre les incidències de diverses màquines durant una setmana. Cada element de la llista és una altra llista de tres elements corresponent a la informació d’una màquina. El primer element és un string amb el codi de la màquina. El segon, un string amb un nombre per cada dia de la setmana separats per comes, on '1', indica incidència, '0' indica absència d’incidència i '10' que la màquina no ha funcionat. El tercer element (int) indica el temps en hores estimat per resoldre cada incidència. Per exemple, a la llista

['X2343', '0,0,0,1,10,0,1', 2]

la màquina amb codi X2343 no ha funcionat el cinquè dia de la setmana, ha tingut incidències el quart i el setè dia, i cada incidència requereix 2 hores per solucionar-se.

Dissenya la funció primera_incidencia que donada una llista d’incidències com la indicada, retorna el temps total requerit per solucionar totes les incidències de la primera màquina de la llista que tingui més dies amb incidències que sense incidències. Els dies en què la màquina no ha funcionat no es comptabilitzen. Si a la llista no hi ha cap màquina que compleixi aquesta condició, la funció retornarà 0.

Els següents doctests mostren exemples del que ha de fer la funció:

>>> li = [['X2398','0,0,10,10,0,1,0',1.5], ['X2328','0,1,1,1,0,0,0',1],
... ['X2328','0,1,1,1,0,1,0',2], ['X2328','0,1,1,1,0,1,0',3]]
>>> primera_incidencia(li)
8

>>> li = [['X2398','0,0,10,10,0,1,0',1.5], ['X2328','0,1,1,1,0,0,0',1],
... ['X2328','0,1,1,0,10,1,0',2], ['X2328','0,10,10,10,0,1,0',3]]
>>> primera_incidencia(li)
0

Desa la funció al fitxer incidencies.py. Disposes de més tests al fitxer test-prim-incidencia.txt.

Solució

Disposes de solucions al fitxer incidencies.py.