Étant donné (sur STDIN, en tant qu'arguments de ligne de commande ou arguments de fonction) deux chaînes distinctes non vides, recherchez et renvoyez la sous-chaîne la plus courte de la première chaîne qui n'est pas une sous-chaîne de la seconde. Si une telle sous-chaîne n'existe pas, vous pouvez renvoyer la chaîne vide, renvoyer toute chaîne qui n'est pas une sous-chaîne de la chaîne d'origine ou lever une exception. Si vous revenez d'une fonction, vous pouvez également retourner null (ou non défini, Aucun, etc.) dans ce cas. Si plusieurs de ces sous-chaînes sont liées pour la plus courte, vous pouvez renvoyer l'une d'entre elles.
Les chaînes peuvent être constituées de n'importe quel caractère ascii imprimable.
L'entrée donnée sur STDIN sera donnée avec une chaîne sur chaque ligne. À votre demande, une seule ligne vide peut être ajoutée à la fin de la saisie.
C'est le golf de code, donc le programme valide le plus court gagne.
QUELQUES CAS D'ESSAI
CONTRIBUTION:
STRING ONE
STRING TWO
PRODUCTION:
E
CONTRIBUTION:
A&&C
A&$C
SORTIES VALIDES:
&&
&C
CONTRIBUTION:
(Deux chaînes de 80 lettres générées aléatoirement)
QIJYXPYWIWESWBRFWUHEERVQFJROYIXNKPKVDDFFZBUNBRZVUEYKLURBJCZJYMINCZNQEYKRADRYSWMH
HAXUDFLYFSLABUCXUWNHPSGQUXMQUIQYRWVIXGNKJGYUTWMLLPRIZDRLFXWKXOBOOEFESKNCUIFHNLFE
TOUTES LES SORTIES VALIDES:
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