ac1084.pas

来自「Ural(Acm.timus.ru)题解 By Maigo大牛」· PAS 代码 · 共 18 行

PAS
18
字号
program ural1084;
var
  a,r:byte;
  si,co,angle:real;
begin
  readln(a,r);
  if r>=a/sqrt(2) then
    writeln(sqr(a)*1.0:0:3)
  else if r<=a/2 then
    writeln(pi*sqr(r):0:3)
  else begin
    co:=a/2/r;
    si:=sqrt(1-sqr(co));
    angle:=arctan(si/co);
    writeln((r*si*a/2+(pi/2-angle*2)*sqr(r)/2)*4:0:3);
  end;
end.

⌨️ 快捷键说明

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