Maraq Düzəltmək
Curiosity, Marsdakı Gale Kraterini araşdıran roverdir. Son zamanlarda Mars torpağında suyun izlərini tapdı, bu da gələcək insanlı missiyaların planlaşdırılmasını asanlaşdıracaq.
Curiosity, Yerlə birbaşa 32 Kbit/s sürətlə əlaqə qura bilir, lakin siqnalların Yer və Mars arasında hərəkət etməsi üçün orta hesabla 14 dəqiqə və 6 saniyə tələb olunur.
"Siz sadəcə bir daşı gördünüz və əyləci tətbiq etdiniz, amma bilirsiniz ki, rover artıq həmin daşı keçib" — roverin sürücüsü Matt Heverly izah edir. "Beləliklə, biz sadəcə marşrutu planlaşdırırıq, sonra sadə mətn əmrlərinin siyahısını yazırıq: bir metr irəli hərəkət et, sola dön, foto çək və s."
Bəzən gözlənilməz hadisələrə çox sürətli reaksiya vermək lazımdır. Məsələn, kameralar maraqlı bir şey gördüsə, roverin marşrutunu dəyişdirib əlavə foto çəkmək istəyə bilərsiniz. Bunu etmək üçün s///g formasında əvəzləmə əmri göndərirsiniz. Bu, soldan başlayaraq bütün halları ilə əvəz edir.
Daha rəsmi olaraq, əgər A boş olmayan bir sətirdirsə və B bir sətirdirsə, onda S sətirinə s/A/B/g əvəzləmə əmrini tətbiq etmək üçün aşağıdakıları etməlisiniz:
S içində A sətirinin soldan ilk meydana gəlməsini tapın, belə ki, S = SL + A + SR.
Əgər belə bir hal yoxdursa, dayanın. O zaman, S cavabdır.
R SR sətirinə s/A/B/g tətbiq etmənin nəticəsi olsun.
Cavab SL + B + R.
Bu o deməkdir ki:
Əgər S içində A sətirinin iki üst-üstə düşən halları varsa, yalnız soldakı əvəz olunur. Məsələn, "s/aba/c/g" əmri "abababa" sətirinə tətbiq edildikdə "cbc" verir: ilk "aba" halı əvəz edildikdən sonra sətir "cbaba" olur və yalnız son "aba" halı bundan sonra əvəz edilə bilər.
Heç bir əvəzləmə əvvəlki əvəzləmələrin nəticələrindən istifadə etmir. Məsələn, "s/a/ab/g" əmri "a" sətirinə tətbiq edildikdə "ab" verir, "s/a/ba/g" əmri "a" sətirinə tətbiq edildikdə "ba" verir.
Bilirsiniz ki, əmr nə qədər uzun olarsa, onu ötürmək üçün lazım olan vaxt da o qədər böyükdür. Beləliklə, ilkin sətiri son sətirə çevirən ən qısa əmri tapan bir proqram yazmalısınız.
Giriş verilənləri
Birinci sətir ilkin və son sətirləri ehtiva edir. Hər iki sətir boş deyil və uzunluqları 2000 simvoldan çox deyil. Sətirlər yalnız İngilis hərfləri, boşluqlar və durğu işarələri (vergüllər, iki nöqtələr, nöqtəli vergüllər və tirelər: ',', ':', ';', '-') ehtiva edir. Verilən sətirlər bərabər deyil.
Çıxış verilənləri
İlkin sətiri son sətirə çevirən və minimum uzunluğa malik olan əvəzləmə əmri çıxarın. Əgər bir neçə ən qısa əvəzləmə əmri varsa, onlardan hər hansı birini çıxarın.