Intersection d'intervalles dans des vecteurs
Rust
Medium
vectors
Tâche «Intersection d'intervalles dans des vecteurs»
Étant donnés deux vecteurs contenant des intervalles non chevauchants et triés par ordre croissant. Chaque intervalle est représenté par une paire d'entiers [start, end] (inclus). Il faut trouver l'intersection de ces deux ensembles d'intervalles. Le résultat doit être présenté sous forme d'un vecteur d'intervalles triés par ordre croissant. S'il n'y a pas d'intersection, afficher un vecteur vide. Il est garanti que les intervalles d'entrée ne se chevauchent pas à l'intérieur de chaque vecteur.
Format d\ entrée
Sur la première ligne, un entier n — le nombre d'intervalles dans le premier vecteur. Ensuite, n lignes, chacune contenant deux entiers start et end séparés par un espace. Puis un entier m — le nombre d'intervalles dans le deuxième vecteur. Ensuite, m lignes avec les intervalles.
Format de sortie
Sur la première ligne, un entier k — le nombre d'intervalles dans l'intersection. Ensuite, k lignes, chacune avec deux nombres — start et end séparés par un espace.
Exemples
Exemple 1
ENTRÉE
1
4 7
1
8 10
SORTIE
0
Exemple 2
ENTRÉE
bbbbb
SORTIE
1
Exemple 3
ENTRÉE
3
1 2 3
SORTIE
0
main.rs