Pares únicos de números em coleções

Java Medium collections

Tarefa «Pares únicos de números em coleções»

São fornecidas duas listas de números inteiros. É necessário encontrar todos os pares únicos (a, b), onde a pertence à primeira lista, b pertence à segunda, e a soma a + b é um número primo. A unicidade do par é determinada pelos valores de a e b (a ordem não importa: (a, b) e (b, a) são considerados diferentes se a != b). Exiba a quantidade desses pares e os próprios pares em ordem crescente de a e, para valores iguais de a, em ordem crescente de b.

Formato de Entrada

A primeira linha contém dois números inteiros N e M (1 ≤ N, M ≤ 1000) — os tamanhos da primeira e da segunda lista. A segunda linha contém N números inteiros — os elementos da primeira lista. A terceira linha contém M números inteiros — os elementos da segunda lista. Todos os números em módulo não excedem 10^6.

Formato de Saída

Na primeira linha, exiba um número K — a quantidade de pares únicos. Nas próximas K linhas, exiba os próprios pares no formato "a b", cada um em uma nova linha, em ordem crescente de a e, para valores iguais de a, em ordem crescente de b.

Exemplos

Exemplo 1

ENTRADA
3 3 1 2 3 4 5 6
SAÍDA
4 1 4 1 6 2 5 3 4

Exemplo 2

ENTRADA
2 2 10 20 30 40
SAÍDA
0

Exemplo 3

ENTRADA
My IP is 192.168.1.1 and 10.0.0.255
SAÍDA
192.168.1.1 10.0.0.255
main.java