Interseção de intervalos em vetores
Rust
Medium
vectors
Tarefa «Interseção de intervalos em vetores»
Dados dois vetores contendo intervalos não sobrepostos e ordenados em ordem crescente. Cada intervalo é representado por um par de números inteiros [start, end] (inclusive). É necessário encontrar a interseção desses dois conjuntos de intervalos. O resultado deve ser apresentado como um vetor de intervalos ordenados em ordem crescente. Se não houver interseções, imprimir um vetor vazio. É garantido que os intervalos de entrada não se sobrepõem dentro de cada vetor.
Formato de Entrada
Na primeira linha, o número inteiro n — quantidade de intervalos no primeiro vetor. Em seguida, n linhas, cada uma contendo dois números inteiros start e end separados por espaço. Depois, o número inteiro m — quantidade de intervalos no segundo vetor. Em seguida, m linhas com os intervalos.
Formato de Saída
Na primeira linha, o número inteiro k — quantidade de intervalos na interseção. Em seguida, k linhas, cada uma com dois números — start e end separados por espaço.
Exemplos
Exemplo 1
ENTRADA
1
4 7
1
8 10
SAÍDA
0
Exemplo 2
ENTRADA
bbbbb
SAÍDA
1
Exemplo 3
ENTRADA
3
1 2 3
SAÍDA
0
main.rs