Я решала эту задачу ...с горем - по - полам .. простите :(.. в ней должны быть равны элементы стоящие в одной побочной диагонале. всего побочных диагоналей n+m-1. достаточно хранить первую строку и последний столбец,
var n, m, i, j, b : integer; a : array [1..30000] of integer; t : boolean; begin assign(input,'input.txt'); reset(input); assign(output,'output.txt'); rewrite(output); readln(n,m); while n+m>0 do begin t:=true; for j:=1 to m do read(a[j]); for i:=2 to n do begin for j:=1 to m-1 do begin read(b); t:=t and (b=a[i+j-1]) end; read(b); a[m+i-1]:=b end; if t then write('Y') else write('N'); readln(n,m) end; close(output) ; end.
в ней должны быть равны элементы стоящие в одной побочной диагонале. всего побочных диагоналей n+m-1.
достаточно хранить первую строку и последний столбец,
var n, m, i, j, b : integer;
a : array [1..30000] of integer;
t : boolean; begin assign(input,'input.txt');
reset(input);
assign(output,'output.txt');
rewrite(output);
readln(n,m);
while n+m>0 do
begin
t:=true;
for j:=1 to m do
read(a[j]);
for i:=2 to n do begin
for j:=1 to m-1 do begin
read(b);
t:=t and (b=a[i+j-1]) end;
read(b);
a[m+i-1]:=b end;
if t then write('Y') else write('N');
readln(n,m) end;
close(output) ;
end.
2³ = 3 + 5
3³ = 7 + 9 + 11
4³ = 13 + 15 + 17 + 19
Заметим что во втором выражении первое число(7) получается как 3*(3-2)+1
В третьем аналогично: 13 получается как 4*(4-1)+1
Получаем формулу для первого значения: x1 = n*(n-1)+1
Остальные числа получаются путём прибавления 2 к предыдущему слагаемому. Так же заметим что число слагаемых равно числу которое мы возводим в степень.
x = int(input("Введите число: "))
xn = x * (x - 1) + 1
rezultat = xn
while (x != 1):
xn += 2
rezultat += xn
x -= 1
print("Результат возведения в 3 степень:", rezultat)