Menu
Coddy logo textTech

Trova il pattern

Fa parte della sezione Fondamenti del percorso Ruby di Coddy. Lezione 87 di 88.

challenge icon

Sfida

Facile

Leggi una stringa dall'input e trova il pattern ripetuto più piccolo che forma l'intera stringa.

Un pattern valido deve:

  • Avere una lunghezza che divide esattamente la lunghezza totale della stringa
  • Se ripetuto il numero appropriato di volte, ricreare esattamente la stringa originale

Se la stringa è composta da un pattern ripetuto, stampa il pattern più piccolo. Se non esiste alcun pattern ripetuto, stampa la stringa originale.

Per verificare se un pattern funziona, puoi usare la moltiplicazione di stringhe: pattern * count crea una nuova stringa ripetendo il pattern.

Ad esempio, se l'input è abcabcabc, l'output dovrebbe essere:

abc

Se l'input è xyxyxyxy, l'output dovrebbe essere:

xy

Se l'input è aaaa, l'output dovrebbe essere:

a

Se l'input è hello, l'output dovrebbe essere:

hello

Se l'input è abcdef, l'output dovrebbe essere:

abcdef

Provalo tu

# Leggi la stringa di input
s = gets.chomp

# TODO: Scrivi il tuo codice qui sotto
# Trova il più piccolo schema ripetuto che forma l'intera stringa
# Suggerimento: controlla le lunghezze degli schemi che dividono esattamente la lunghezza della stringa
# Usa la moltiplicazione delle stringhe (pattern * count) per verificare se uno schema funziona

result = s  # Sostituisci questo con la tua soluzione

# Mostra il risultato
puts result

Tutte le lezioni di Fondamenti

Esercitati da solo: Compilatore Ruby online