Fusión de dos slices ordenados con eliminación de duplicados

Go Medium slices

Tarea «Fusión de dos slices ordenados con eliminación de duplicados»

Dados dos slices de enteros ordenados de forma ascendente. Combínalos en un solo slice ordenado, eliminando todos los duplicados. Implementa la función MergeSortedUnique(a, b []int) []int, que toma dos slices y devuelve un nuevo slice. Los datos de entrada se leen desde stdin: primero la longitud del primer slice, luego sus elementos, después la longitud del segundo slice y sus elementos. Imprime el slice resultante separado por espacios.

Formato de entrada

Primera línea: un número entero n (0 ≤ n ≤ 1000) — longitud del primer slice. Segunda línea: n números enteros, ordenados de forma ascendente. Tercera línea: un número entero m (0 ≤ m ≤ 1000). Cuarta línea: m números enteros, ordenados de forma ascendente.

Formato de salida

Una línea: los elementos del slice resultante, ordenados de forma ascendente, sin duplicados, separados por un espacio.

Ejemplos

Ejemplo 1

ENTRADA
3 1 1 2 3 1 2 3
SALIDA
1 2 3

Ejemplo 2

ENTRADA
3 0 0 1
SALIDA
3
main.go