За какое минимальное количество перестановок из последовательности : )): ): ): можно получить максимальное количество смайликов : )? под перестановкой понимается замена друг на друга двух непересекающихся фрагментов последовательности одинаковой длины. а) 1 б) 2 в)3 г) 4
139
275
Ответы на вопрос:
Так с наскоку увидеть перестановку не получилось, и для улучшения зрения сделана программка возможные перестановки хранятся в массиве xchng. в программе сделана проверка на две перестановки, что, по большому счёту избыточно, т.к. кратчайшее решение содержит всего одну перестановку. но дополнить программу проверками на 3 и 4 перестановку можно. program pr_1; type xchng_type = record len, first, second: integer; end; const xchng: array [1..50] of xchng_type = ( (len: 4; first: 1; second: 5), (len: 3; first: 1; second: 4), (len: 3; first: 1; second: 5), (len: 3; first: 1; second: 6), (len: 3; first: 2; second: 5), (len: 3; first: 2; second: 6), (len: 3; first: 3; second: 6), (len: 2; first: 1; second: 3), (len: 2; first: 1; second: 4), (len: 2; first: 1; second: 5), (len: 2; first: 1; second: 6), (len: 2; first: 1; second: 7), (len: 2; first: 2; second: 4), (len: 2; first: 2; second: 5), (len: 2; first: 2; second: 6), (len: 2; first: 2; second: 7), (len: 2; first: 3; second: 5), (len: 2; first: 3; second: 6), (len: 2; first: 3; second: 7), (len: 2; first: 4; second: 6), (len: 2; first: 4; second: 7), (len: 2; first: 5; second: 7), (len: 1; first: 1; second: 2), (len: 1; first: 1; second: 3), (len: 1; first: 1; second: 4), (len: 1; first: 1; second: 5), (len: 1; first: 1; second: 6), (len: 1; first: 1; second: 7), (len: 1; first: 1; second: 8), (len: 1; first: 2; second: 3), (len: 1; first: 2; second: 4), (len: 1; first: 2; second: 5), (len: 1; first: 2; second: 6), (len: 1; first: 2; second: 7), (len: 1; first: 2; second: 8), (len: 1; first: 3; second: 4), (len: 1; first: 3; second: 5), (len: 1; first: 3; second: 6), (len: 1; first: 3; second: 7), (len: 1; first: 3; second: 8), (len: 1; first: 4; second: 5), (len: 1; first: 4; second: 6), (len: 1; first: 4; second: 7), (len: 1; first: 4; second: 8), (len: 1; first: 5; second: 6), (len: 1; first: 5; second: 7), (len: 1; first: 5; second: 8), (len: 1; first: 6; second: 7), (len: 1; first: 6; second: 8), (len: 1; first: 7; second: 8) ); var s, s_target, s1, s2, s3, s4, s5, snew1, snew2, snew3, snew4: string; p1,p2,p3,p4: integer; begin s : = ': )): ): ): '; s_target : = ': ): ): ): )'; //s: ='abcdefgh'; for p1 : = 1 to 50 do begin snew1 : = concat( copy(s, 1, xchng[p1].first - 1), copy(s, xchng[p1].second, xchng[p1].len), copy(s, xchng[p1].first + xchng[p1].len, xchng[p1].second - xchng[p1].len - xchng[p1].first), copy(s, xchng[p1].first, xchng[p1].len), copy(s, xchng[p1].second + xchng[p1].len, 9 - xchng[p1].second - xchng[p1].len)); if(comparestr(s_target, snew1) = 0) then writeln('число перестановок = 1, номер перестановки #1=', p1); for p2 : = 1 to 50 do begin snew2 : = concat( copy(snew1, 1, xchng[p1].first - 1), copy(snew1, xchng[p2].second, xchng[p2].len), copy(snew1, xchng[p2].first + xchng[p2].len, xchng[p2].second - xchng[p2].len - xchng[p2].first), copy(snew1, xchng[p2].first, xchng[p2].len), copy(snew1, xchng[p2].second + xchng[p2].len, 9 - xchng[p2].second - xchng[p2].len)); if(comparestr(s_target, snew2) = 0) then writeln('число перестановок = 2, номера перестановок #1=', p1,', #2=', p2); end; end; end. и вот ответ: число перестановок = 1, номер перестановки #1=7 длина блока 3 начало первого блока3 начало второго блока6
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
tim1963yt29.08.2021 09:50
-
game10855106.02.2022 13:13
-
панда134118.06.2021 04:15
-
nastia0410201509.06.2021 04:04
-
gtufifk13.04.2020 21:09
-
котикkatya15.03.2023 05:55
-
LyVlAr03.12.2020 12:06
-
shevchenkotanu09.08.2020 16:30
-
8192034612.09.2022 17:13
-
букет22315.01.2022 09:38
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.