Unions et intersections d'ensembles

Video preview
Les ensembles en Python sont similaires aux ensembles en mathématiques à bien des égards. Ils sont définis de la même manière, avec des accolades. On peut effectuer des unions, des intersections ou des soustractions sur des ensembles. L'intersection de deux ensembles X et Y peut être réalisée avec & en Python. L'union de deux ensembles X et Y peut être réalisée avec |. Et la soustraction peut être réalisée avec l'opérateur - :
x = {3, 12, 5, 13}
y = {14, 15, 6, 3}
print(x, y)          # {5, 3, 12, 13} {3, 15, 6, 14}
print(x & y)         # {3}
print(x | y)         # {3, 5, 6, 12, 13, 14, 15}
print(x - y)         # {13, 12, 5}
  • L'intersection de deux ensembles comprend tous les éléments présents dans les deux ensembles. En Python, elle est notée avec l'opérateur "et" & (éléments présents à la fois dans A et B).
  • L'union de deux ensembles comprend tous les éléments des deux ensembles. En Python, elle est notée avec l'opérateur "ou" | (éléments présents soit dans A, soit dans B).
  • La soustraction de deux ensembles comprend tous les éléments qui sont présents dans l'ensemble A mais pas dans B. En Python, elle est notée avec l'opérateur de soustraction - (éléments présents dans A mais pas dans B).

Défi

Imaginez que vous êtes enseignant dans une classe où chaque groupe réalise plusieurs présentations au cours de l'année sur différents sujets. Il y a n groupes d'étudiants et chaque groupe crée une ou plusieurs présentations pendant l'année. Vous êtes intéressé par 2 nombres : combien de sujets différents ont été couverts pendant l'année et combien de sujets ont été présentés par TOUS les groupes.
La première ligne de l'entrée contient un entier n. Les n lignes suivantes contiennent les sujets que chaque groupe a présentés, séparés par une virgule et un espace , .
Le programme doit afficher deux nombres séparés par un espace. Le premier nombre doit indiquer le nombre total de sujets présentés et le second nombre doit indiquer combien de sujets ont été couverts par chaque groupe de la classe.
Entrée
Sortie
4 Neural Networks, Deep Learning, Machine Learning, AI AI, Data Science, Sports Analytics, Deep Learning Deep Learning, AI, Automation of jobs with AI AI, Scientific thinking, Recent advances in NLP, Deep Learning
9 2
1 Python, Django, Flask, AI, Backend
5 5
Explication:
  1. Il y a 9 sujets uniques couverts : Deep Learning, Machine Learning, Neural Networks, Data Science, Sports Analytics, Scientific thinking, Automation of jobs with AI, Recent advances in NLP, AI
  1. Il y a 2 sujets couverts par tous les groupes : Deep Learning, AI
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue