Устройство «Марк 1» задуманное профессором Говардом Эйкеном и выпущенное IBM в 1941 году, представляло собой первый в Америке программируемый компьютер. Он был огромен, занимая в длину свыше 17 метров, а в высоту — свыше 2.5 метра. Машина, в оболочке из стекла и нержавеющей стали, весила 4,5 тонны, а общая протяженность ее соединительных проводов чуть-чуть не дотягивала до 800 км. (это можно просто запомнить - За синхронизацию основных вычислительных модулей отвечал пятнадцатиметровый вал, который приводил в движение электродвигатель мощностью 4 кВт)
Объяснение:
Условие пытается немного обмануть решающего. На самом деле всегда можно выбрать Рахманов ломтик строки, состоящий из одного символа (действительно, если в искомой подстроке несколько символов, то каждый из них встречается не меньшее число раз, что и сама подстрока). В итоге задача превращается в тривиальную: считать строку и вывести символ, встречающийся максимальное число раз.
#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;
}
Подробнее - на -
5*35*60=10500 символов
3750 байт=30000бит
30 000/10500~3
N=2^3=8