Koronkorko è la parola finlandese per interesse composto . Non vogliamo interesse composto per le nostre stringhe, quindi troviamo l'espressione regolare più breve possibile per escluderla.
Data una stringa composta solo dai caratteri alfabetici maiuscoli AZ, determinare l'espressione regolare più breve possibile che corrisponda alla stringa se non contiene la sottostringa KORONKORKO
. Qualsiasi stringa che contiene KORONKORKO
come sottostringa non deve corrispondere al regex.
Solo i personaggi A
- Z
, [
, ]
, -
, ^
, ,
?
, *
, +
, |
, (
, e )
dovrebbero essere utilizzati nell'espressione.
Penso che questo possa essere fatto con 118 caratteri nell'espressione. Puoi renderlo più breve?
Nota: questa sfida è di Ohjelmointiputka (in finlandese).
!
non è permesso.
-
e ^
all'interno di classi di caratteri (quindi ^
non può essere utilizzato come ancora) e una corrispondenza viene conteggiata solo se l'intera stringa è abbinata al regex (ovvero un circostante implicito ^$
, come al contrario dei normali "regex" che contano una stringa come corrispondente se una parte di essa corrisponde al regex)
!
fosse un personaggio consentito, avresti potuto farlo^((?!KORONKORO).)*$
per 19 byte.