Задания
Версия для печати и копирования в MS Word
Тип 12 № 18820
i

Ис­пол­ни­тель Ре­дак­тор по­лу­ча­ет на вход стро­ку цифр и пре­об­ра­зу­ет её. Ре­дак­тор может вы­пол­нять две ко­ман­ды, в обеих ко­ман­дах v и w обо­зна­ча­ют це­поч­ки цифр.

А)  за­ме­нить (v, w).

Эта ко­ман­да за­ме­ня­ет в стро­ке пер­вое слева вхож­де­ние це­поч­ки v на це­поч­ку w. На­при­мер, вы­пол­не­ние ко­ман­ды за­ме­нить (111, 27) пре­об­ра­зу­ет стро­ку 05111150 в стро­ку 0527150.

Если в стро­ке нет вхож­де­ний це­поч­ки v, то вы­пол­не­ние ко­ман­ды за­ме­нить (v, w) не ме­ня­ет эту стро­ку.

Б)  на­шлось (v).

Эта ко­ман­да про­ве­ря­ет, встре­ча­ет­ся ли це­поч­ка v в стро­ке ис­пол­ни­те­ля Ре­дак­тор. Если она встре­ча­ет­ся, то ко­ман­да воз­вра­ща­ет ло­ги­че­ское зна­че­ние «ис­ти­на», в про­тив­ном слу­чае воз­вра­ща­ет зна­че­ние «ложь». Стро­ка ис­пол­ни­те­ля при этом не из­ме­ня­ет­ся.

 

Цикл

ПОКА усло­вие

    по­сле­до­ва­тель­ность ко­манд

КОНЕЦ ПОКА

вы­пол­ня­ет­ся, пока усло­вие ис­тин­но.

 

Най­ди­те сумму цифр в стро­ке, ко­то­рая по­лу­чит­ся в ре­зуль­та­те при­ме­не­ния при­ведённой ниже про­грам­мы к стро­ке, со­сто­я­щей из 65 цифр 9.

НА­ЧА­ЛО

    ПОКА на­шлось (999) ИЛИ на­шлось (222)

        ЕСЛИ на­шлось (222)

            ТО за­ме­нить (222, 9)

        ИНАЧЕ

            за­ме­нить (999, 2)

        КОНЕЦ ЕСЛИ

    КОНЕЦ ПОКА

КОНЕЦ

Спрятать решение

Ре­ше­ние.

Дан­ный ал­го­ритм сна­ча­ла за­ме­нит де­вять пер­вых де­вя­ток на три двой­ки, после чего эти три двой­ки будут за­ме­не­ны на одну де­вят­ку, после чего пер­вые три де­вят­ки за­ме­нят­ся на одну двой­ку. После этого ал­го­ритм будет дей­ство­вать по сле­ду­ю­ще­му прин­ци­пу: сна­ча­ла он за­ме­нит шесть сле­ду­ю­щих после двой­ки де­вя­ток на две двой­ки, далее ал­го­ритм за­ме­нит три двой­ки на одну де­вят­ку, после чего три пер­вых де­вят­ки за­ме­нят­ся на одну двой­ку. Таким об­ра­зом, ал­го­ритм будет за­ме­нять двой­ку и сле­ду­ю­щие за ней во­семь де­вя­ток на одну двой­ку, пока не оста­нет­ся стро­ка 2999999. В этой стро­ке ал­го­ритм за­ме­нит сле­ду­ю­щие после двой­ки шесть де­вя­ток на две двой­ки, после чего за­ме­нит три двой­ки на одну де­вят­ку. Сумма цифр в по­лу­чив­шей­ся стро­ка равна 9.

 

Ответ: 9.

 

При­ве­дем ре­ше­ние Ми­ха­и­ла Глин­ско­го.

Для на­хож­де­ния от­ве­та ис­поль­зу­ет­ся про­грам­ма на языке Питон, вы­пол­ня­ю­щая за­дан­ные пре­об­ра­зо­ва­ния стро­ки:

s='9'*65

while ('999' in s) or ('222' in s) :

    if ('222' in s):

         s=s.replace('222','9',1)

    else:

        s=s.replace('999','2',1)

print(s)

 

При­ве­дем про­грам­му Дмит­рия Вол­нен­ко.

Про­грам­ма после пре­об­ра­зо­ва­ния стро­ки на­хо­дит сумму ее цифр:

s = '9'*65

while '999' in s or '222' in s:

    if '222' in s:

        s = s.replace('222', '9',1)

    else:

        s = s.replace('999', '2')

print(sum(map(int,s)))

Источник: ЕГЭ по ин­фор­ма­ти­ке 13.06.2019. Ос­нов­ная волна. Юг-Центр
Раздел кодификатора ФИПИ: 1.6.2 Вы­чис­ли­мость. Эк­ви­ва­лент­ность ал­го­рит­ми­че­ских мо­де­лей