ENG  RUSTimus Online Judge
Online Judge
Problems
Authors
Online contests
About Online Judge
Frequently asked questions
Site news
Webboard
Links
Problem set
Submit solution
Judge status
Guide
Register
Update your info
Authors ranklist
Current contest
Scheduled contests
Past contests
Rules
back to board

Discussion of Problem 1102. Strange Dialog

my dp program is TLE!!!!!!!
Posted by fighter_hrh 2 Sep 2008 20:01
program hrh;
const
  s2:array[1..6] of ansistring=('in','out','output','puton','one','input');
var
  n:longint;
  f:array[0..1000000] of boolean;
  s:ansistring;
procedure init;
var
  i,j,k,now:longint;
begin
  readln(n);
  for i:=1 to n do
    begin
      readln(s);
      now:=0;
      f[0]:=true;
      if (pos(' ',s)<length(s))and(pos(' ',s)<>0) or (s='')  then
        begin
          writeln('NO');
          continue;
        end;
      for j:=1 to length(s) do
        begin
          f[j]:=false;
          for k:=1 to 6 do
            if (j-length(s2[k])>=0) then
              begin
                if (copy(s,j-length(s2[k])+1,length(s2[k]))=s2[k]) and f[j-length(s2[k])] then
                  f[j]:=true;
              end;
          if f[j] then now:=0 else
            inc(now);

          if now>=6 then
            begin
              f[length(s)]:=false;
              break;
            end;
        end;
     if f[length(s)] then writeln('YES')
       else writeln('NO');
    end;
end;

begin
 init;
end.



I think my program may be right,but how to AC it is still a
big problem,  who can help me????????