Главная / ЕГЭ Информатика / Задание №24 / ID 33969
ID 33969 ЕГЭ Информатика Линия №24 СдамГИА ID: 33196 Анализ информационных моделей
✈️ TG ВК Следующая ⏭️
Текстовый файл содержит только заглавные буквы латинского алфавита (ABC…Z). Определите символ, который чаще всего встречается в файле сразу после буквы A.
Например, в тексте ABCAABADDD после буквы A два раза стоит B, по одному разу  — A и D. Для этого текста ответом будет B.
Для выполнения этого задания следует написать программу. Ниже приведён файл, который необходимо обработать с помощью данного алгоритма.

Задание 24
💡 Пошаговый разбор и решение:
Для решения этой задачи считаем строку из файла. Инициализируем строковую переменную s1 со значением ABCDEFGHIJKLMNOPQRSTUVWXYZ. Посимвольно перебирая строку из файла, каждый раз встречая букву A, будем вставлять в строку s1 символ, идущий после буквы A в считанной строке, таким образом, чтобы в строке s1 соответствующие символы стояли рядом друг с другом (например, если из файла была считана строка ABAB, строка s1 после выполнения алгоритма будет выглядеть так: ABBBCDEFGHIJKLMNOPQRSTUVWXYZ. После этого посчитаем длину самой длинной цепочки символов и таким образом получим ответ.

Приведём решение данной задачи на языке Pascal.

var
len, max, count: longint;
s, s1: string;
maxC: char;
f: text;
begin
assign(f,'C:\24.txt');
reset(f);
readln(f, s);
len := length(s);
s1 := 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
for i:integer := 1 to len do begin
if ((s[i] = 'A') and (i <> len)) then
s1 := s1.Substring(0, s1.LastIndexOf(s[i+1])) + s[i+1] + s1.Substring(s1.LastIndexOf(s[i+1]));
end;
len := length(s1);
max := 1;
count := 0;
for i:integer := 1 to len-1 do begin
if (s1[i] = s1[i+1]) then count := count + 1
else count := 0;
if count > max then begin
max := count;
maxC := s1[i];
end;
end;
writeln(maxC);
end.

Приведём другое решение данной задачи на языке Pascal.

var
len, max: longint;
maxC: char;
s: string;
arr: array ['A'..'Z'] of integer;
f: text;
begin
assign(f,'C:\24.txt');
reset(f);
readln(f, s);
len := length(s);
for i:integer := 1 to len - 1 do begin
if (s[i] = 'A') then arr[s[i+1]] := arr[s[i+1]] + 1;
end;
max := 0;
for j:char := 'A' to 'Z' do begin
if arr[j] > max then begin
max := arr[j];
maxC := j;
end;
end;
writeln(maxC);
end.

В результате работы данных алгоритмов при вводе данных из файла в условии получаем ответ  — G.

Ответ: G.

Примечание. Путь к файлу необходимо указать согласно расположению файла на Вашем компьютере.

Приведём другое решение на языке Python.

f = open("24.txt")
s = f.readline()
a = [0] * 26
maxi = 0
for i in range(len(s) - 1):
if s[i] == 'A':
a[ord(s[i + 1]) - 65] += 1
for i in range(26):
if a[i] > maxi:
maxi = a[i]
index = i
print(chr(index + 65))

Приведём решение Панина Евгения на языке Python.

from collections import Counter
f=open('24.txt').readline()
t=''
for i in range(len(f)-1):
if f[i]=='A':
t+=f[i+1]
print(Counter(t).most_common()[0][0])

Приведём решение Лысакова Юрия на языке Python.

f=open('24.txt').readline()
j=''
for i in range(len(f)-1):
if f[i] == 'A':
j += f[i+1]
print(max(set(j),key = j.count))

Приведём решение Ивана Клочкова на языке Python.

a = open("24.txt").readline().strip()
d = "QWERTYUIOPASDFGHJKLZXCVBNM"
s = {}
s = s.fromkeys(d, 0)
for i in range(len(a)):
if a[i] == "A":
s[a[i+1]] = s[a[i+1]]+1
qa = []
for e in s.keys():
r = s.get(e)
qa.append(r)
for e in s.keys():
if max(qa) == s.get(e):
print(e)

Приведём решение Михаила Глинского на языке Python.

s = open('24.txt').readline()
maxb=0
mm=''
for i in sorted('QWERTYUIOPASDFGHJKLZXCVBNM'):
if s.count('A'+i)>maxb:
mm=i
maxb=s.count('A'+i)
print(mm)

Приведём решение Юрия Красильникова на языке Python.

s = open('24.txt').readline()
a = [s[i] for i in range(1,len(s)) if s[i-1]=='A']
m = max([a.count(c) for c in set(a)])
print(*[c for c in set(a) if a.count(c)==m])
Правильный ответ: G
📚 Похожие разобранные задания по предмету:
ID 34166 • Задание №24
Требовалось написать программу, при выполнении которой с клавиатуры считываются координаты точки на плоскости ...
Смотреть разбор ↗
ID 29933 • Задание №5
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1.  С...
Смотреть разбор ↗
🔗 Другие задания линии №24 по предмету Информатика:
ID 33959 Текстовый файл состоит не более чем из 106 символов X, Y и Z. Определите максимальное количеств... ID 33960 Текстовый файл состоит не более чем из 106 символов X, Y и Z. Определите длину самой длинной по... ID 33961 Текстовый файл состоит не более чем из 106 символов X, Y и Z. Определите максимальную длину цеп... ID 33962 Текстовый файл состоит не более чем из 106 символов A, B и C. Определите максимальное количеств... ID 33963 Текстовый файл состоит не более чем из 106 символов A, B и C. Определите максимальное количеств...
← Предыдущее задание 📚 Все задания по предмету Следующее задание →