Если разрешение файла увеличили в три раза, а частоту дискретизации уменьшили в пять раз, значит объем файла был увеличен в три раза и уменьшен в пять.
Время передачи изменяется пропорционально объему файла, то есть, к примеру, увеличив объем в три раза, время передачи будет увеличено также в три раза.
В пункт А файл был передан за 50 секунд. Определим время передачи в пункт А нового (изменённого) файла.
50 * 3 / 5 = 30 секунд.
То есть если бы мы передавали измененный файл в пункт А, то он был бы передан за 30 сек.
Пропускная между А и Б в шесть раз выше, значит из пункта А в пункт Б файл был передан за
Var i,j,n:integer; m: array[1..10,1..10] of integer; flag:boolean; sum: array[0..1] of longint; begin readln(n); flag:=true; for i:=1 to n do begin for j:=1 to n do read(m[i,j]); readln; end; //Проверяем строки i:=1; for j:=1 to n do sum[i mod 2]:=sum[i mod 2]+m[i,j]; while ((i<n) and flag) do begin i:=i+1; for j:=1 to n do sum[i mod 2]:=sum[i mod 2]+m[i,j]; if sum[0]<>sum[1] then flag:=false; sum[(i+1) mod 2]:=0; end; //Проверяем столбцы sum[0]:=0; sum[1]:=0; j:=1; for i:=1 to n do sum[j mod 2]:=sum[j mod 2]+m[i,j]; while ((j<n) and flag) do begin j:=j+1; for i:=1 to n do sum[j mod 2]:=sum[j mod 2]+m[i,j]; if sum[0]<>sum[1] then flag:=false; sum[(j+1) mod 2]:=0; end; sum[0]:=0; sum[1]:=0; j:=1; for i:=1 to n do begin sum[0]:=sum[0]+m[i,j]; sum[1]:=sum[1]+m[n-i+1,j]; j:=j+1; end; if sum[0]<>sum[1] then flag:=false; if flag then writeln('Магический'); end.
Если разрешение файла увеличили в три раза, а частоту дискретизации уменьшили в пять раз, значит объем файла был увеличен в три раза и уменьшен в пять.
Время передачи изменяется пропорционально объему файла, то есть, к примеру, увеличив объем в три раза, время передачи будет увеличено также в три раза.
В пункт А файл был передан за 50 секунд. Определим время передачи в пункт А нового (изменённого) файла.
50 * 3 / 5 = 30 секунд.
То есть если бы мы передавали измененный файл в пункт А, то он был бы передан за 30 сек.
Пропускная между А и Б в шесть раз выше, значит из пункта А в пункт Б файл был передан за
30 / 6 = 5 секунд.
i,j,n:integer;
m: array[1..10,1..10] of integer;
flag:boolean;
sum: array[0..1] of longint;
begin
readln(n);
flag:=true;
for i:=1 to n do
begin
for j:=1 to n do
read(m[i,j]);
readln;
end;
//Проверяем строки
i:=1;
for j:=1 to n do
sum[i mod 2]:=sum[i mod 2]+m[i,j];
while ((i<n) and flag) do
begin
i:=i+1;
for j:=1 to n do
sum[i mod 2]:=sum[i mod 2]+m[i,j];
if sum[0]<>sum[1] then flag:=false;
sum[(i+1) mod 2]:=0;
end;
//Проверяем столбцы
sum[0]:=0;
sum[1]:=0;
j:=1;
for i:=1 to n do
sum[j mod 2]:=sum[j mod 2]+m[i,j];
while ((j<n) and flag) do
begin
j:=j+1;
for i:=1 to n do
sum[j mod 2]:=sum[j mod 2]+m[i,j];
if sum[0]<>sum[1] then flag:=false;
sum[(j+1) mod 2]:=0;
end;
sum[0]:=0;
sum[1]:=0;
j:=1;
for i:=1 to n do
begin
sum[0]:=sum[0]+m[i,j];
sum[1]:=sum[1]+m[n-i+1,j];
j:=j+1;
end;
if sum[0]<>sum[1] then flag:=false;
if flag then writeln('Магический');
end.