Penyelesaian tab adalah fitur yang berguna yang secara otomatis melengkapi perintah yang ditulis sebagian. Anda akan mengimplementasikannya.
Misalnya, jika perintah yang tersedia adalah ['apply','apple','apple pie','eat']
, maka a
akan lengkap untuk appl
, karena semua perintah yang dimulai dengan a
juga dimulai dengan appl
.
Input output
Anda perlu memasukkan string, A, dan satu set string, B.
Anda perlu menampilkan awalan umum terpanjang dari semua B yang dimulai dengan A.
- Jika tidak ada opsi yang dimulai dengan A, maka kembalikan A
- Anda dapat mengasumsikan bahwa B adalah kosong, dan bahwa semua string adalah kosong
- Anda tidak dapat berasumsi bahwa salah satu opsi mulai dengan A, atau awalan umum akan lebih lama dari A
- Anda bisa menjadi case sensitif atau case sensitif.
- Anda hanya perlu menangani ASCII yang dapat dicetak
- Built-in yang secara eksplisit melakukan tugas ini diizinkan
Kasus uji:
'a' ['apply','apple','apple pie','eat'] => 'appl'
'a' ['apple pie'] => 'apple pie'
'apple' ['eat','dine'] => 'apple'
'program' ['programa','programb'] => 'program'
'*%a(' ['*%a()-T>','*%a()-T<','@Da^n&'] => '*%a()-T'
'a' ['abs','absolute','answer'] => 'a'
'a' ['a','abs'] => 'a'
'one to' ['one to one','one to many'] => 'one to '
Perhatikan ruang tambahan pada test case terakhir
Ini adalah kode-golf , jadi buat jawaban Anda sesingkat mungkin!
\
atau '
.
'
dalam contoh. Jika saya gunakan "
untuk string, maka string berbeda dari contoh lainnya.