La ONU vol guardar informació sobre l’organització dels seus països membres i de les províncies que aquests contenen, juntament amb el seu PIB (producte interior brut).
La informació sobre una província determinada es guarda a la classe següent:
@dataclass
class Provincia:
nom: str
capital: str
habitants: int
area: int
pib: float
La informació sobre un pais determinat es guarda a la classe següent:
@dataclass
class Pais:
nom: str
capital: str
provincies: list[Provincia]
La informació sobre tots els paisos es guarda en un vector de paisos:
Paisos: TypeAlias = list[Pais]
Utilitzant les definicions anteriors, implementeu la funció
def pib(paisos: Paisos, inicial: str, densitat: float) -> float: ...
que retorni la suma dels productes interiors bruts de totes les províncies amb densitat estrictament superior a @densitat@ de tots els paisos en @paisos@ que comencin per la lletra @inicial@.
Només cal enviar el procediment demanat; el programa principal serà ignorat.
Seguiu estrictament la definició dels tipus de l’enunciat.