Dadas (em STDIN, como argumentos de linha de comando ou argumentos de função) duas seqüências de caracteres não vazias distintas, localize e retorne a menor substring da primeira string que não é uma substring da segunda. Se não existir essa substring, você pode retornar a string vazia, retornar qualquer string que não seja uma substring da string original ou lançar uma exceção. Se você estiver retornando de uma função, também poderá retornar nulo (ou indefinido, Nenhum etc.) nesse caso. Se várias dessas substrings estiverem vinculadas pelo menor tempo, você poderá retornar qualquer uma delas.
As strings podem consistir em qualquer caractere ASCII imprimível.
As entradas fornecidas no STDIN serão fornecidas com uma string em cada linha. A seu pedido, uma única linha vazia pode ser adicionada no final da entrada.
Isso é código de golfe, então o programa válido mais curto vence.
ALGUNS CASOS DE TESTE
ENTRADA:
STRING ONE
STRING TWO
RESULTADO:
E
ENTRADA:
A&&C
A&$C
SAÍDAS VÁLIDAS:
&&
&C
ENTRADA:
(Duas seqüências de 80 letras geradas aleatoriamente)
QIJYXPYWIWESWBRFWUHEERVQFJROYIXNKPKVDDFFZBUNBRZVUEYKLURBJCZJYMINCZNQEYKRADRYSWMH
HAXUDFLYFSLABUCXUWNHPSGQUXMQUIQYRWVIXGNKJGYUTWMLLPRIZDRLFXWKXOBOOEFESKNCUIFHNLFE
TODAS AS SAÍDAS VÁLIDAS:
AD
BJ
BR
CZ
DD
EE
ER
EY
EY
FF
FJ
FW
FZ
HE
IJ
IN
IW
JC
JR
JY
KL
KP
KR
KV
LU
MH
MI
NB
NQ
OY
PK
PY
QE
QF
QI
RA
RB
RF
RO
RV
RY
RZ
SW
UE
UH
UN
UR
VD
VQ
VU
WB
WE
WI
WU
XN
XP
YI
YK
YK
YM
YS
YW
YX
ZB
ZJ
ZN
ZV