как ускорить ету задачу? Паскаль

программирование паскаль

var f1,f2:text;
a:array[1..1000,1..1000]of byte;
i,j,m,n,k,b,h:integer;
kil:longint;
l:boolean;
begin
assign(f1,'table.dat');
assign(f2,'table.ans');
reset(f1);
readln(f1,n,m);
kil:=0;
for i:=1 to n do
begin
for j:=1 to m do read(f1,a[i,j]); if a[i,j]=1 then inc(kil);
readln(f1);
end;
close(f1);
rewrite(f2);
if kil=m*n then writeln(f2,kil)else
begin
kil:=0;
l:=true;
while l=true do
begin
l:=false;
i:=1;
while(i<=n)and(l=false)do
begin
j:=1;
while(j<=m)and(l=false)do
begin
k:=0;
for b:=1 to m do if a[i,b]=1 then inc(k);
for h:=1 to n do if a[h,j]=1 then inc(k);
if a[i,j]=1 then k:=k-1;
if k mod 2=1 then
begin
for b:=1 to m do if a[i,b]=1 then a[i,b]:=0 else a[i,b]:=1;
for h:=1 to n do if a[h,j]=1 then a[h,j]:=0 else a[h,j]:=1;
if a[i,j]=1 then a[i,j]:=0 else a[i,j]:=1;
inc(kil);
l:=true;
end;
inc(j);
end;
inc(i);
end;
end;
writeln(f2,kil);
end;
close(f2);
end.
Ответы:
Где описание задачи? Код читать лень


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.