Если считается, что заражются все и начал один, то остается вопрос - а адреса входят в обе стороны или нет то есть
1 кампьютер заразил 10 компов,
Каждый из этих 10 компов отослал письма другим 10, то
<em> </em><em>Будет поражено (10000)</em>
k = 1536
I = 3 Кбайт = 3 * 8 * 1024 = 24576 Бит
i = 24576 / 1536 = 16
N = 2 ** i
N = 2 ** 16
N = 65536.
Ответ: Мощность алфавита равна 65536
Если цепочки две, то выводится ближайшая. Пойдет?
//t1.txt должен быть в папке с программой
//Pascal
var
f: text;
numValue, Counts, n, c, t, i: integer;
begin
assign(f, 't1.txt');
reset(f);
Counts := 0;
c := 0;
while not eof(f) do
begin
readln(f, n);
if (c = 0) or (n = t) then
c := c + 1
else
c := 1;
t := n;
if c > Counts then
begin
Counts := c;
numValue := n
end
end;
close(f);
assign(f, 't2.txt');
rewrite(f);
writeln('Длина цепочки: ', Counts);
for i := 1 to Counts do
writeln(f, numValue);
close(f)
end.
2048:8=256 байт=0,25КБайт
16:0,25=64 сек. - для 1 файла.
512*64:8:1024=4
//Вы принимаете введенный символ в char, а в switch пытаетесь использовать двузначные числа (10, 11, 12). Даже если вы ввели "11", то в Char приходит только первый введенный символ, т.е "1", и выводится соответственно "январь". Чтобы использовать двузначные числа, нужно использовать переменную с другим типом данных, например int или string.
//Также я ввел поддержку русского языка в консоль, у меня во всяком случае консоль по умолчанию не поддерживает русские символы
//Еще я убрал переменную С, так как не понял, зачем вы ее вообще ввели (она нигде не используется)
#include <iostream>
#include <locale>
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
string b;
int a;
cin » a;
switch (a)
{
case 1: b = "январь"; break;
case 2: b = "февраль"; break;
case 3: b = "март"; break;
case 4: b = "апрель"; break;
case 5: b = "май"; break;
case 6: b = "июнь"; break;
case 7: b = "июль"; break;
case 8: b = "август"; break;
case 9: b = "сентябрь"; break;
case 10: b = "октябрь"; break;
case 11: b = "ноябрь"; break;
case 12: b = "декабрь"; break;
default: b = "Ошибка!"; break;
}
cout « endl « b « endl;
return 0;
}