Latar Belakang
Sebuah Matryoshka (atau boneka bersarang Rusia) adalah satu set boneka yang muat di dalam satu sama lain. Saya tidak sengaja mencampurkan koleksi boneka matryoshka saya dan saya tidak ingat yang mana yang ada di dalamnya.
Objektif
Diberikan daftar string yang unik , mengurutkannya menjadi boneka matryoshka bersarang. Setiap string adalah boneka individu, dan boneka matryoshka adalah daftar string.
Aturan
Membiarkan min(a,b)
menjadi min lexicographic string a
dan b
. Biarkan a ⊂ b
menyatakan itu a
adalah substring dari b
. Kemudian,
- Daftar boneka matryoshka harus diurutkan secara leksikografis
- String
a
dapat masuk ke stringb
jikaa ⊂ b
- Jika
a ⊂ b
dana ⊂ c
, makaa
akan masuk ke dalammin(b,c)
- Jika keduanya
a ⊂ c
danb ⊂ c
, tetapia ⊄ b
b ⊄ a
, maka hanyamin(a,b)
akan masuk ke dalamc
- Jika keduanya
a ⊂ c
danb ⊂ c
, dan jugaa ⊂ b
, maka hanyab
akan masukc
. Yaitu, superstring berjalan sebelum substring sehingga matryoshka tidak dihentikan sebelum waktunya.
Contohnya
In:
hahaha, hah, lol, lololol, bahaha, bah, haha, ah
Out:
bahaha, bah, ah
hahaha, haha, hah
lololol, lol
In:
aa, aaaa, a, aaaaaaaaaa
Out:
aaaaaaaaaa, aaaa, aa, a
3
Posting pertama di sini, tolong tunjukkan apa pun yang bodoh / perbaikan yang diperlukan.
—
sujeet
Selamat datang di PPCG! Jika Anda tidak yakin apakah posnya cukup baik, Anda dapat mempostingnya di Sandbox terlebih dahulu.
—
user202729
Itu tidak wajib, simpan saja di sini. Komunitas menyukainya.
—
user202729
@sujeet di masa mendatang, coba poskan ke sandbox terlebih dahulu. Ini adalah tempat untuk mendapatkan umpan balik tentang tantangan Anda sebelum Anda mempostingnya di situs utama. Jangan khawatir tentang hal itu sekarang, karena tantangan ini tampaknya baik-baik saja, tetapi ini sesuatu yang perlu dipertimbangkan untuk masa depan.
—
R
Apa yang harus menjadi hasil
—
Zgarb
ab, ba, aba, bab
? Dengan aturan 3, keduanya ab
dan ba
harus masuk aba
, dan dengan aturan 4, ba
tidak bisa masuk ke salah satu aba
atau bab
.