⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dog.pas

📁 PASCAL光盘资料PASCAL光盘资料PASCAL光盘资料
💻 PAS
字号:


program dog;
var
 inn,out:text;
 x,y,d,xr,yr,pl,mi:array[0..100001] of longint;
 i,j,n,plus,minus:longint;
begin
 assign (inn,'dog.in');
 assign (out,'dog.out');

 reset (inn);
 readln (inn,n);
 mi[0]:=maxlongint;
 for i:=1 to n do
    begin
     readln (inn,x[i],y[i],d[i]);
     pl[i]:=pl[i-1];
     if x[i]+y[i]>pl[i] then pl[i]:=x[i]+y[i];
     mi[i]:=mi[i-1];
     if x[i]-y[i]<mi[i] then mi[i]:=x[i]-y[i];
    end;
 {d[n+1]:=maxlongint; x[n+1]:=1000000; y[n+1]:=1000000;}

 close (inn);

 xr[n+1]:=x[n];
 yr[n+1]:=y[n]-d[n];
 d[n+1]:=d[n];
 for i:=n downto 1 do
    begin
     xr[i]:=xr[i+1];
     yr[i]:=yr[i+1]-d[i+1]+d[i];

     {writeln (xr[i],'.',yr[i]);
     readln;}

     for j:=i to i do
        begin
         if xr[i]+yr[i]<pl[j]-d[j] then plus:=pl[j]-d[j]
                                       else plus:=xr[i]+yr[i];
         if xr[i]-yr[i]>mi[j]+d[j] then minus:=mi[j]+d[j]
                                       else minus:=xr[i]-yr[i];
         xr[i]:=(plus+minus)div 2;
         yr[i]:=(plus-minus+1)div 2;

         {writeln (xr[i],' ',yr[i]);
         readln;}

         {x[i]
         y[i]+d[i]}
        end;
    end;

 rewrite (out);
 for i:=1 to n do
    begin
     writeln (out,xr[i],' ',yr[i]);
    end;
 close (out);
end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -