Информатика-3. Частотный словарьОграничение времени 1 секундаОграничение памяти 64MbВвод...

0 голосов
69 просмотров

Информатика-3. Частотный словарьОграничение времени 1 секундаОграничение памяти 64MbВвод стандартный ввод или input.txtВывод стандартный вывод или output.txtЧастотный словарь представляет собой список всех различных слов, встречающихся в тексте, с указанием для слова его частоты, то есть информации о том, сколько раз это слово встретилось в тексте.Вам дан частотный словарь, составленный по некоторому тексту. Ваша задача — найти в исходном тексте наиболее часто встречающуюся букву и выяснить, сколько раз она в нём встречается.Формат вводаВ первой строке входа содержится одно целое число N — количество разных слов в тексте (1 ≤ N ≤ 1000). Каждая из последующих N строк содержит слово, состоящее из не менее, чем одной, и не более, чем 10 строчных латинских букв, и, через пробел — целое число в интервале от 1 до 1000 — количество раз, которое соответствующее слово встретилось в тексте.Формат выводаВыведите одно число — сколько раз наиболее часто встречающаяся буква (или одна из наиболее часто встречающихся, если таких букв несколько) встретится в исходном тексте.ПримерВвод Вывод3lets 3go 2solve 14ПримечанияПо 4 раза в тексте встречаются буквы `l', `e' и `s'.Решением к данной задаче является программа, написанная на одном из представленных в системе языков программирования. Программа должна считывать данные со стандартного потока ввода (иначе говоря, «с клавиатуры») и выводить ответ в стандартный вывод (иначе говоря, «на экран»).Выводить лишние символы (исключая пробелы и переводы строк) недопустимо, то есть если вместо ответа будет выведен ответ и после него (или перед ним) какое-то лишнее число или строка, то система ответ не зачтёт.Перед тем, как отправить написанную Вами программу, не забудьте указать язык программирования, на котором она написана. Выбор языка осуществляется с помощью выпадающего меню, расположенного сразу под этим текстом.


Информатика (12 баллов) | 69 просмотров
Дан 1 ответ
0 голосов

Я вот тоже Вышел порешать =).

var p: array [1..1000] of record

slovo:string;

k:integer;

end;

N,i,j,max:integer;

c:char;

a:array [97..122] of integer;

BEGIN

max:=0;

readln(N);

for i:=1 to N do

begin

p[i].slovo:='';

repeat

read(c);

p[i].slovo:=p[i].slovo+c

until c=' ';

readln(p[i].k);

for j:=1 to length(p[i].slovo) do

if (ord(p[i].slovo[j])>=97) and (ord(p[i].slovo[j])

a[ord(p[i].slovo[j])]:=a[ord(p[i].slovo[j])]+p[i].k;

end;

for j:=97 to 122 do

if a[j]>max then

max:=a[j];

write(max);

end.

(1.4k баллов)