Itérateur générique de fusion de collections triées

TypeScript Hard generics

Tâche «Itérateur générique de fusion de collections triées»

Implémentez une fonction générique `mergeSorted` qui prend un tableau d'itérateurs (chacun retourne des valeurs triées d'un même type) et retourne un nouvel itérateur délivrant toutes les valeurs dans l'ordre croissant. Le type des valeurs doit être paramétré et supporter la comparaison via l'opérateur `<`. Utilisez les generics TypeScript. Contraintes : les valeurs sont uniques, le nombre d'itérateurs est de 1 à 1000, la longueur de chaque itérateur est jusqu'à 10^5.

Format d\ entrée

Première ligne : nombre N (nombre d'itérateurs). Ensuite N lignes : chaque ligne contient des nombres séparés par des espaces — les éléments d'un itérateur (déjà triés par ordre croissant).

Format de sortie

Une ligne avec des nombres séparés par des espaces — tous les éléments de tous les itérateurs dans l'ordre croissant.

Exemples

Exemple 1

ENTRÉE
3 -2 10 -5
SORTIE
-2 10 -5
main.ts