Informatika gyűjtemény

Egy szinttel feljebb pt_oszt.pas

2004050607080910

NézetNyomtat

pt_oszt.pas (Vissza)
Az alábbi letöltési lehetőségek közül választhatsz: (segítség)
Karakterkódolás:
Sortörés:
Típus: text/plain
Tartalmaz szöveget
Karakterkódolás: us-ascii
Méret: 1 KB
{$I+}{$R+}{$Q+}
{$APPTYPE CONSOLE}
program oszt;
const FNum    = '0';
      FName   = 'osztaly';
      FBe     = FNAme+FNum+'.be';
      FKi     = FName+FNum+'.kix';

const maxN  = 100;

type  TGraf = array[1..maxN,0..maxN]of boolean;

var   g:TGraf;
      jar:array[1..maxN]of boolean;
      n:byte;
      db:byte;
      max,maxi,m:byte;

procedure load;
var be:text;  
    i,j:byte;
begin
  assign(be,FBe);
  reset(be);
  readln(be,N);
  for i:=1 to N do
    for j:=1 to N do
      g[i,j]:=false;
  for i:=1 to N do
    begin
      repeat
        read(be,j);
        g[i,j]:=true;      
      until j=0;
      readln(be);
    end;
  close(be);
end;

procedure rek(i:byte);
var j:byte;
begin
  if not(jar[i]) then
    begin
      inc(db);
      jar[i]:=true;
      for j:=1 to N do if g[i,j] then rek(j);
    end;
end;

function bejar(x:byte):byte;
var i:byte;
begin
  for i:=1 to N do jar[i]:=false;
  db:=0;
  rek(x);
  bejar:=db;
end;



procedure wrout;
var ki:text;
begin
  assign(ki,FKi);
  rewrite(ki);
  writeln(ki,maxi);  
  close(ki);
end;



var i:byte;
begin
  load;
  max:=0;
  maxi:=0;
  for i:=1 to N do
    begin
      m:=bejar(i);
      if m>max then
        begin
          max:=m;
          maxi:=i;
        end;
    end;
  wrout;
end.of.program
(Vissza)