В языке одного племени есть только латинские буквы А, B и C. Поэтому все слова
в этом языке состоят только из этих букв (и при этом любая последовательность букв А, В и С является словом). Некто решил составить словарь семибуквенных слов, в котором все слова идут в алфавитном порядке. Вот первые шесть слов из этого словаря: 1. AAААААА 2. AAААААВ 3. AAААААС 4. AAАААВА 5. AAАААВВ 6. AAАААВС Определите, какое слово находится на 2017 месте. В качестве ответа выведите одну строку, состоящую из семи заглавных латинских букв A, B и C без пробелов между буквами.
Знаешь ответ?
Чтобы оставить ответ, войдите или зарегистрируйтесь.
Ответ или решение 1
Мушканбар
Для начала представим, что А = 0, B = 1, C = 2. Тогда следующий код найдет нужную последовательность букв (но только в зеркальном отражении).
var a:array[1..7] of integer;
i:integer;
begin
i:=0;
while (i<>2016) do //цикл, работающий с итератором
begin
inc(i); //увеличить итератор
inc(a[1]);
a[2]:=a[2]+a[1] div 3; // изменение всех переменных поочередно
a[3]:=a[3]+a[2] div 3;
a[4]:=a[4]+a[3] div 3;
a[5]:=a[5]+a[4] div 3;
a[6]:=a[6]+a[5] div 3;
a[7]:=a[7]+a[6] div 3;
a[1]:=a[1] mod 3;
a[2]:=a[2] mod 3;
a[3]:=a[3] mod 3;
a[4]:=a[4] mod 3;
a[5]:=a[5] mod 3;
a[6]:=a[6] mod 3;
a[7]:=a[7] mod 3;
end;
writeln;
for i:=1 to 7 do write(a[i], ' '); // вывод получится следующим : 0 0 2 2 0 2 2, т. е. символы будут BBABBAA
end.
var a:array[1..7] of integer;
i:integer;
begin
i:=0;
while (i<>2016) do //цикл, работающий с итератором
begin
inc(i); //увеличить итератор
inc(a[1]);
a[2]:=a[2]+a[1] div 3; // изменение всех переменных поочередно
a[3]:=a[3]+a[2] div 3;
a[4]:=a[4]+a[3] div 3;
a[5]:=a[5]+a[4] div 3;
a[6]:=a[6]+a[5] div 3;
a[7]:=a[7]+a[6] div 3;
a[1]:=a[1] mod 3;
a[2]:=a[2] mod 3;
a[3]:=a[3] mod 3;
a[4]:=a[4] mod 3;
a[5]:=a[5] mod 3;
a[6]:=a[6] mod 3;
a[7]:=a[7] mod 3;
end;
writeln;
for i:=1 to 7 do write(a[i], ' '); // вывод получится следующим : 0 0 2 2 0 2 2, т. е. символы будут BBABBAA
end.
Новые вопросы в разделе Информатика
Адинела
05.10.2022, 08:15
Гаязутдин
05.10.2022, 01:10
Алайбек
05.10.2022, 01:05
Акияма
05.10.2022, 01:00