Cod sursa(job #13630)

Utilizator floringh06Florin Ghesu floringh06 Data 7 februarie 2007 11:45:42
Problema Text Scor 30
Compilator fpc Status done
Runda Arhiva de probleme Marime 2.74 kb
{$IFDEF NORMAL}
  {$I-,Q-,R-,S-}
{$ENDIF NORMAL}
{$IFDEF DEBUG}
  {$I+,Q+,R+,S-}
{$ENDIF DEBUG}
{$IFDEF RELEASE}
  {$I-,Q-,R-,S-}
{$ENDIF RELEASE}

type as=ansistring;
var fi,fo:text;
    a,s:as;
    nc,nl,rez:longint;
          ok:boolean;

  function min(i,j:longint):longint;
    begin
     if i=0 then begin min:=j; exit; end;
     if j=0 then begin min:=i; exit; end;
     if i>j then min:=j
       else min:=i;
    end;



  procedure taie;
   begin
    while pos(',',s)<>0 do
      delete(s,pos(',',s),1);
    while pos('.',s)<>0 do
      delete(s,pos('.',s),1);
    while pos('!',s)<>0 do
      delete(s,pos('!',s),1);
    while pos('?',s)<>0 do
      delete(s,pos('?',s),1);
    while pos(';',s)<>0 do
      delete(s,pos(';',s),1);
    while pos(':',s)<>0 do
      delete(s,pos(':',s),1);
    while pos('(',s)<>0 do
      delete(s,pos('(',s),1);
    while pos(')',s)<>0 do
      delete(s,pos(')',s),1);
   end;

{ procedure solve;
   var i,j,c:longint;
    begin
     i:=1;
     for i:=1 to 10 do
       if s[i] in[('A')..('Z')] then
         begin
          delete(s,1,i-1);
          break;
         end
       else
        if s[i] in[('a')..('z')] then
         begin
          delete(s,1,i-1);
          break;
         end;
     while pos('- ',s)<>0 do
      delete(s,pos('-',s),1);
     while s<>'' do
      begin
      c:=min(pos(' ',s),pos('-',s));
      if c=0 then
        begin
         inc(nl,length(s));
         inc(nc);
         break;
        end;
      c:=min(pos(' ',s),pos('-',s));
      inc(nl,c-1);
      inc(nc);
      delete(s,1,c);

      end;
      rez:=trunc(nl/nc);
    end;

      }
 procedure solve;
   var i,j,c,sp,ln:longint;
    begin
     i:=1;
     sp:=0;
     ln:=0;
     for i:=1 to 10 do
       if s[i] in[('A')..('Z')] then
         begin
          delete(s,1,i-1);
          break;
         end
       else
        if s[i] in[('a')..('z')] then
         begin
          delete(s,1,i-1);
          break;
         end;
       ok:=false;
       nc:=1;

       while pos('- ',s)<>0 do
          delete(s,pos('- ',s),1);
       while ok=false do
         begin
           while pos('-',s)<>0 do
            begin
              delete(s,pos('-',s),1);
              inc(nc);
            end;
           while pos(' ',s)<>0 do
            begin
               delete(s,pos(' ',s),1);
               inc(nc);
            end;
           ok:=true;
         end;
       nl:=length(s);
       rez:=trunc(nl/nc);
      end;


begin
 assign(fi,'text.in'); reset(fi);
 assign(fo,'text.out'); rewrite(fo);
 read(fi,a);
 s:=a;
 taie;
 solve;
{ writeln(fo,nl);
 writeln(fo,nc);              }
 writeln(fo,rez);
close(fi);
close(fo);
end.