EGG - Thả trứng , trò giải trí tuổi teen

Tác giả: flashmt

Ngôn ngữ: Pascal

const fi='';
      fo='';
      maxn=1000;
      maxm=9;
var n,m,t,i:longint;
    f:array[1..maxm,1..maxn] of longint;
    pos:array[0..1,0..maxn] of longint;

procedure init;
var i,j,k,t,lt,z:longint;
begin
     for j:=1 to maxn do
     begin
          f[1,j]:=j; pos[1,j]:=j;
     end;
     pos[1,0]:=0;
     for i:=2 to maxm do
     begin
          z:=i and 1; t:=1; lt:=2; k:=1; f[i,1]:=1;
          pos[z]:=pos[1-z];
          while lt<=maxn do
          begin
               t:=t+pos[1-z,k]+1;
               if t>maxn then t:=maxn;
               for j:=lt to t do f[i,j]:=k+1;
               pos[z,k+1]:=t;
               lt:=t+1;
               inc(k);
          end;
     end;
end;

begin
     init;
     assign(input,fi); reset(input);
     assign(output,fo); rewrite(output);
     readln(t);
     for i:=1 to t do
     begin
          readln(m,n);
          if m>maxm then m:=maxm;
          writeln(f[m,n]);
     end;
     close(input); close(output);
end.








Download