Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var a: array [0..1001,0..1001] of integer;
- s: array [1..1000,1..2] of integer;
- max,i,j,ki,km,i1,j1,m: integer;
- BEGIN
- readln(max);
- for i:=1 to max do
- for j:=1 to max do
- readln(a[i,j]);
- m :=0;
- for i:=1 to max do
- for j:=1 to max do
- if a[i,j] = 1 then
- begin
- m := m+1;
- ki := 1;
- km := 0;
- s[1,1] := i;
- s[1,2] := j;
- while (km < ki) do
- begin
- km := km+1;
- a[s[km,1],s[km,2]] := 0;
- if (a[s[km,1]+1,s[km,2]] = 1)
- then
- begin
- ki := ki+1;
- s[ki,1] := s[km,1]+1;
- s[ki,2] := s[km,2];
- end;
- if (a[s[km,1]-1,s[km,2]] = 1)
- then
- begin
- ki := ki+1;
- s[ki,1] := s[km,1]-1;
- s[ki,2] := s[km,2];
- end;
- if (a[s[km,1],s[km,2]+1] = 1)
- then
- begin
- ki := ki+1;
- s[ki,1] := s[km,1];
- s[ki,2] := s[km,2]+1;
- end;
- if (a[s[km,1],s[km,2]-1] = 1)
- then
- begin
- s[ki,1] := s[km,1];
- s[ki,2] := s[km,2]-1;
- ki := ki+1;
- end;
- if (a[s[km,1]+1,s[km,2]-1] = 1)
- then
- begin
- ki := ki+1;
- s[ki,1] := s[km,1]+1;
- s[ki,2] := s[km,2]-1;
- end;
- if (a[s[km,1]-1,s[km,2]+1] = 1)
- then
- begin
- ki := ki+1;
- s[ki,1] := s[km,1]-1;
- s[ki,2] := s[km,2]+1;
- end;
- if (a[s[km,1]-1,s[km,2]-1] = 1)
- then
- begin
- ki := ki+1;
- s[ki,1] := s[km,1]-1;
- s[ki,2] := s[km,2]-1;
- end;
- if (a[s[km,1]+1,s[km,2]+1] = 1)
- then
- begin
- ki := ki+1;
- s[ki,1] := s[km,1]+1;
- s[ki,2] := s[km,2]+1;
- end;
- end;
- writeln();
- writeln(m);
- end;
- END.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement