Условие пытается немного обмануть решающего. На самом деле всегда можно выбрать Рахманов ломтик строки, состоящий из одного символа (действительно, если в искомой подстроке несколько символов, то каждый из них встречается не меньшее число раз, что и сама подстрока). В итоге задача превращается в тривиальную: считать строку и вывести символ, встречающийся максимальное число раз.
#include <iostream>
int main() {
char c, maxchar;
int count[26] = {0}, maxcount = 0;
while (std::cin.get(c)) {
count[c - 'a']++;
}
for (c = 0; c < 26; c++) {
if (count[c] > maxcount) {
maxcount = count[c];
maxchar = c;
}
}
std::cout << static_cast<char>(maxchar + 'a');
return 0;
}
var ran0: array[1..20] of string; {массив для ввода туда слов}
i,j,n:integer;
strk:string;
begin
n:=0;
for i:=1 to 20 do
begin
readln(ran0[i]); {вбиваем туда слова}
if ran0[i]='' then break; {тормозим цикл, если введена пустая строка}
inc(n);
ran0[i]:=ran0[i][2:]; {отбрасываем цифру с точкой}
end;
for i:=1 to n-1 do {выполняем сортировку}
for j:=1 to n-i do
if (ran0[j])>(ran0[j+1]) then
begin
strk:=ran0[j]; {сортируем массив}
ran0[j]:=ran0[j+1];
ran0[j+1]:=strk;
end;
for i:=1 to n do {выводим отсортированный массив}
write(ran0[i][2:],',');
end.
1)for i in range(1,10):
for j in range(1,10):
print("%4d" % (i*j), end='')
print()
2)import random
a = []
for i in range(101):
a.append(random.randint(0,100))
print(a)
Объяснение: