Genetika
Yeni Meksikoda bir kraterin yaxınlığında yadplanetli bakteriya koloniyası kəşf edilib. Dr. Poucher yadplanetli DNT strukturunun öyrənilməsinə həsr olunmuş ICPC BioLab-da elmi qrupun rəhbəridir. Onların kəşflərini burada qısa şəkildə təsvir edirik.
Yadplanetli DNT molekulları dairəvi ardıcıllıq strukturuna malikdir. Hər bir ardıcıllıq nukleotidlərdən ibarətdir. 26 fərqli növ nukleotid mövcuddur və hər biri iki üzə malik ola bilər. Qeyd etmək vacibdir ki, hər hansı bir yadplanetli DNT molekulunda hər bir nukleotid ya heç görünmür, ya da dəqiq iki dəfə görünür (beləliklə, DNT molekulunun uzunluğu 2 ilə 52 arasında cüt tam ədəddir). Əgər bir nukleotid iki dəfə görünürsə, hər bir görünüş müstəqil olaraq hər iki növdən biri ola bilər. Yadplanetli bakteriyaların iki növ ucları var ki, bunlar texniki bioloji terminologiyada qollar və ayaqlar adlanır. Dr. Poucher-in komandasının əsas kəşfi bakteriyanın DNT strukturunu araşdıraraq onun dəqiq qol və ayaq sayını müəyyən etmək metodudur.
Burada hər bir nukleotidi əlifbanın hərfi kimi təqdim edirik. Fərqli nukleotidləri a, A, . . . z, Z kimi adlandırırıq, burada bir hərfin kiçik və böyük formaları nukleotidin görünə biləcəyi iki mümkün üzü təmsil edir; həmçinin bir nukleotidi hər hansı bir üzdə təmsil etmək üçün a/A, b/B, . . . z/Z istifadə edəcəyik.
Ucların sayını müəyyən etmək üçün Dr. Poucher qollar və ayaqlar üçün iki sayğacı sıfıra bərabər olaraq başlayır və sonra DNT ardıcıllığını başqa birinə çevirmək üçün bir sıra əməliyyatlar həyata keçirir. Hər bir çevrilmədən sonra tətbiq olunan əməliyyatın növünə görə bəzi sayğacları artırmaq lazım ola bilər. Nukleotidlərin boş ardıcıllığına (bu, ∅ ilə göstəriləcək) çatdıqda, orijinal molekulun uclarının sayı tapılmış olur. Mümkün əməliyyatlar bunlardır:
1. Əks üzlərlə görünən müəyyən bir nukleotidin ardıcıl halları aradan qaldırılır. Qolların və ayaqların sayı qorunur. Məsələn: aBbCaC → aCaC Bb aradan qaldırılaraq. Başqa bir nümunə: DeHhEd → eHhE dD aradan qaldırılaraq. DNT strukturu dairəvi olduğundan, sətirdə sonuncu və birinci hərflər birləşdirilir.
2. Eyni üzlə görünən ardıcıl nukleotidlər aradan qaldırılır. Qolların sayına bir əlavə edilir. Məsələn: BBcgCg → cgCg BB aradan qaldırılaraq. Başqa bir nümunə: xabyyaBX → xabaBX yy aradan qaldırılaraq.
3. Müxtəlif üzlərlə görünən iki fərqli nukleotidin növbəli olaraq meydana gəldiyi dörd nukleotid ardıcıllığı aradan qaldırılır. Ayaqların sayına bir əlavə edilir. Məsələn: dcDCefFe → efFe, dcDC aradan qaldırılaraq. Başqa bir nümunə: cmNMnC → cC mNMn aradan qaldırılaraq.
4. Kəsmə və yapışdırma, ən mürəkkəb prosedur.
Əvvəlcə bir nukleotid seçilir, məsələn a/A, və DNT ardıcıllığı iki xətti zəncirə bölünür ki, nukleotid hər birində bir dəfə görünsün.
İkincisi, əgər a/A hər iki dəfə eyni üzlə görünürsə, zəncirlərdən biri hər bir nukleotidin üzünü dəyişdirərək tərsinə çevrilir.
Sonra zəncirlər a ilə baş verən alt ardıcıllıq A ilə baş verən alt ardıcıllıqla, a ilə baş verən alt ardıcıllıq A ilə baş verən alt ardıcıllıqla birləşdirilir.
Nəhayət, zənciri dairəvi formaya bağlamaq üçün iki yeni a/A nukleotidi əlavə edilir. Yeni nukleotidlərin üzü, seçilmiş orijinal nukleotid cütlüyünün eyni üzü varsa eyni olur, əks halda fərqli olur.
Rəsmi olaraq, a/A nukleotidini seçdiyinizi düşünün və bir anlıq fərz edin ki, hər iki dəfə a (A) üzü ilə görünür. Kəsmə və yapışdırma əməliyyatı S_1aS_2S_3aS_4 (müvafiq olaraq S_1AS_2S_3AS_4) ardıcıllıqlarını S_2aS_1S_3aS_4 (müvafiq olaraq S_2AS_1S_3AS_4) ardıcıllıqlarına çevirir. Digər tərəfdən, əgər a/A nukleotidi iki fərqli üzlə görünürsə, əməliyyat S_1aS_2S_3AS_4 ardıcıllıqlarını S_2aS_1S_4AS_3 ardıcıllıqlarına çevirir. S_1, S_2, S_3 və S_4 ixtiyari alt zəncirlərdir (mümkün qədər boş). Hər iki halda orijinal dairəvi zəncir S_1(a/A)S_2 və S_3(a/A)S_4 şəklində kəsilmişdir.
Məsələn (aşağıdakı şəkildə baxın): BacDcAbD ardıcıllığı ilə başlayaraq, BacDc və AbD zəncirlərini əldə edə bilərik. Sonra, a/A nukleotidində birləşdirərək cDca’BbDA’ ardıcıllığını əldə edirik, burada a’ və A’ yeni a/A nukleotidlərini təmsil edir. Burada, S_1 = B, S_2 = cDc, S_3= ∅ və S_4= bD.
Başqa bir nümunə: eyni DNT ardıcıllığını BacDcAbD götürün və DBac və DcAb zəncirlərini kəsin; c/C nukleotidini yapışdırın (bu halda bir zənciri tərsinə çevirmək lazımdır, məsələn BaCd) və cDBadcBa ardıcıllığını əldə edin. Burada, S_1 = DBa, S_2 = ∅, S_3 = D və S_4 = Ab.
Bu əməliyyat qolların və ya ayaqların sayını dəyişdirmir, lakin əvvəlki əməliyyatlarla ağıllı şəkildə birləşdirilərək DNT molekulunun ölçüsünü azaltmaq və hesablamanı bitirmək üçün istifadə edilə bilər.
Lakin, yadplanetli bakteriyalar eyni zamanda həm qollar, həm də ayaqlar təqdim etmir. Bu, onların erkən inkişafında, bir və ya daha çox qolun mövcudluğunda bir ayağın iki qola çevrilməsi ilə əlaqədardır. Yuxarıda qeyd olunanlara görə, nəticə ya qolların sayı, ya da ayaqların sayı olur, lakin eyni zamanda hər ikisi deyil. Bahalı cərrahi prosedurlardan qaçmaq üçün Dr. Poucher sizdən bir proqram yazmağı istəyib ki, DNT ardıcıllığı verilmiş bir bakteriyanın neçə qol və ayaq inkişaf etdirəcəyini hesablasın. Nəticənin tətbiq olunan əməliyyatların xüsusi ardıcıllığından asılı olmayaraq orijinal sətir tərəfindən unikal şəkildə müəyyən edildiyi təmin edilir.
Giriş verilənləri
Hər bir test halı yadplanetli bakteriyanın DNT strukturunu təmsil edən, 2 ilə 52 arasında cüt uzunluqda olan bir sətirdən ibarətdir. Bütün simvollar hərflərdir. Girişdə hər sətirdə bir hal olacaq. Son sətir “END” sözünü ehtiva edir və işlənməməlidir.
Çıxış verilənləri
Hər bir test halı üçün çıxışda dəqiq bir sətir olmalıdır, bakteriyanın neçə qol və ya ayağa sahib olacağını göstərən bir rəqəm, ardınca müvafiq olaraq “qollar” və ya “ayaqlar” sözü (əgər rəqəm 1 olarsa, sözlər təkdə olmalıdır). Əgər nə qollar, nə də ayaqlar olmayacaqsa, proqram “heç biri” sözünü çap etməlidir.