program squareunion;
const
MAXN = 100000;
type elenco= Array [1..MAXN] of LongInt;
var
N, i, base, altezza : LongInt;
R, X, Inizio, Fine :elenco;
ans, areaoverl : Int64;
Procedure scambia (var a,b: Longint);
var x:Longint;
begin
x:=a;
a:=b;
b:=x;
end;
Procedure ordinamento (estremoi,estremos: Longint; var v : elenco; var u:elenco; var w:elenco; ordinato:boolean);
var inf, sup, medio:Longint;
pivot :Longint;
begin
inf:=estremoi;
sup:=estremos;
medio:= (estremoi+estremos) div 2;
pivot:=v[medio];
repeat
if (ordinato) then
begin
while (v[inf]<pivot) do inf:=inf+1;
while (v[sup]>pivot) do sup:=sup-1;
end;
if inf<=sup then
begin
scambia(v[inf],v[sup]);
scambia(u[inf],u[sup]);
scambia(w[inf],w[sup]);
inf:=inf+1;
sup:=sup-1;
end;
until inf>sup;
if (estremoi<sup) then ordinamento(estremoi,sup,v,u,w,ordinato);
if (inf<estremos) then ordinamento(inf,estremos,v,u,w,ordinato);
end;
begin
{
uncomment the two following lines if you want to read/write from files
assign(input, 'input.txt'); reset(input);
assign(output, 'output.txt'); rewrite(output);
}
ReadLn(N);
for i:=1 to N do
Read(X[i]);
ReadLn();
ans:=0;
for i:=1 to N do begin Read(R[i]); ans:=ans+sqr(2*R[i]); end;
ReadLn();
areaoverl := 0;
for i:=1 to N do
begin
Inizio[i]:=X[i]-R[i];
Fine[i]:=X[i]+R[i];
end;
ordinamento(1,N,Inizio, Fine, R, true);
For i:=1 to N do write (Inizio[i],' '); writeln;
For i:=1 to N do write (Fine[i],' '); writeln;
For i:=1 to N do write (R[i],' '); writeln;
For i:=1 to N-1 do
begin
if Fine[i]<=Inizio[i+1] then areaoverl:=0
else
begin
if Fine[i]>Fine[i+1] then areaoverl:=sqr(2*R[i+1])
else
begin
base:=Fine[i]-Inizio[i+1];
if R[i]<=R[i+1] then altezza:=2*R[i]
else altezza:=2*R[i+1];
areaoverl:=base*altezza;
end;
end;
writeln(areaoverl);
ans:= ans-areaoverl;
end;
WriteLn(ans);
end.
cHJvZ3JhbSBzcXVhcmV1bmlvbjsKY29uc3QKICAgIE1BWE4gPSAxMDAwMDA7CnR5cGUgZWxlbmNvPSBBcnJheSBbMS4uTUFYTl0gb2YgTG9uZ0ludDsKdmFyCiAgICBOLCBpLCBiYXNlLCBhbHRlenphIDogTG9uZ0ludDsKICAgIFIsIFgsIEluaXppbywgRmluZSA6ZWxlbmNvOwogICAgYW5zLCBhcmVhb3ZlcmwgIDogSW50NjQ7CiAgICAKUHJvY2VkdXJlIHNjYW1iaWEgKHZhciBhLGI6IExvbmdpbnQpOwp2YXIgeDpMb25naW50OwpiZWdpbgogICB4Oj1hOwogICBhOj1iOwogICBiOj14OwplbmQ7ICAKClByb2NlZHVyZSBvcmRpbmFtZW50byAoZXN0cmVtb2ksZXN0cmVtb3M6IExvbmdpbnQ7IHZhciB2IDogZWxlbmNvOyB2YXIgdTplbGVuY287IHZhciB3OmVsZW5jbzsgb3JkaW5hdG86Ym9vbGVhbik7CnZhciBpbmYsIHN1cCwgbWVkaW86TG9uZ2ludDsKICAgIHBpdm90IDpMb25naW50OwpiZWdpbgogICAgaW5mOj1lc3RyZW1vaTsKICAgIHN1cDo9ZXN0cmVtb3M7CiAgICBtZWRpbzo9IChlc3RyZW1vaStlc3RyZW1vcykgZGl2IDI7CiAgICBwaXZvdDo9dlttZWRpb107CiAgICByZXBlYXQKICAgICAgaWYgKG9yZGluYXRvKSB0aGVuCiAgICAgICAgIGJlZ2luCiAgICAgICAgICAgIHdoaWxlICh2W2luZl08cGl2b3QpIGRvICBpbmY6PWluZisxOwogICAgICAgICAgICB3aGlsZSAodltzdXBdPnBpdm90KSBkbyAgc3VwOj1zdXAtMTsKICAgICAgICAgZW5kOwogICAgICBpZiBpbmY8PXN1cCB0aGVuCiAgICAgICBiZWdpbgogICAgICAgICBzY2FtYmlhKHZbaW5mXSx2W3N1cF0pOwogICAgICAgICBzY2FtYmlhKHVbaW5mXSx1W3N1cF0pOwogICAgICAgICBzY2FtYmlhKHdbaW5mXSx3W3N1cF0pOwogICAgICAgICBpbmY6PWluZisxOwogICAgICAgICBzdXA6PXN1cC0xOwogICAgICAgZW5kOwogICAgdW50aWwgaW5mPnN1cDsKICAgIGlmIChlc3RyZW1vaTxzdXApIHRoZW4gb3JkaW5hbWVudG8oZXN0cmVtb2ksc3VwLHYsdSx3LG9yZGluYXRvKTsKICAgIGlmIChpbmY8ZXN0cmVtb3MpIHRoZW4gb3JkaW5hbWVudG8oaW5mLGVzdHJlbW9zLHYsdSx3LG9yZGluYXRvKTsKZW5kOwoKCgpiZWdpbgp7CiAgICB1bmNvbW1lbnQgdGhlIHR3byBmb2xsb3dpbmcgbGluZXMgaWYgeW91IHdhbnQgdG8gcmVhZC93cml0ZSBmcm9tIGZpbGVzCiAgICBhc3NpZ24oaW5wdXQsICAnaW5wdXQudHh0Jyk7ICByZXNldChpbnB1dCk7CiAgICBhc3NpZ24ob3V0cHV0LCAnb3V0cHV0LnR4dCcpOyByZXdyaXRlKG91dHB1dCk7Cn0KCiAgICBSZWFkTG4oTik7CgogICAgZm9yIGk6PTEgdG8gTiBkbwogICAgICAgIFJlYWQoWFtpXSk7CiAgICBSZWFkTG4oKTsKICAgIGFuczo9MDsKICAgIGZvciBpOj0xIHRvIE4gZG8gYmVnaW4gUmVhZChSW2ldKTsgYW5zOj1hbnMrc3FyKDIqUltpXSk7IGVuZDsKICAgIFJlYWRMbigpOwogICAgYXJlYW92ZXJsIDo9IDA7CiAgICBmb3IgaTo9MSB0byBOIGRvCiAgICAgICAgIGJlZ2luCiAgICAgICAgICAgIEluaXppb1tpXTo9WFtpXS1SW2ldOwogICAgICAgICAgICBGaW5lW2ldOj1YW2ldK1JbaV07CiAgICAgICAgIGVuZDsKICAgIG9yZGluYW1lbnRvKDEsTixJbml6aW8sIEZpbmUsIFIsIHRydWUpOwogICAgRm9yIGk6PTEgdG8gTiBkbyB3cml0ZSAoSW5pemlvW2ldLCcgJyk7IHdyaXRlbG47CiAgICBGb3IgaTo9MSB0byBOIGRvIHdyaXRlIChGaW5lW2ldLCcgJyk7IHdyaXRlbG47CiAgICBGb3IgaTo9MSB0byBOIGRvIHdyaXRlIChSW2ldLCcgJyk7IHdyaXRlbG47CiAgICAKICAgIEZvciBpOj0xIHRvIE4tMSBkbwogICAgICAgICAgICAgICAgYmVnaW4KICAgICAgICAgICAgICAgICAgIGlmIEZpbmVbaV08PUluaXppb1tpKzFdIHRoZW4gYXJlYW92ZXJsOj0wCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlZ2luCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIEZpbmVbaV0+RmluZVtpKzFdIHRoZW4gYXJlYW92ZXJsOj1zcXIoMipSW2krMV0pCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZWdpbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFzZTo9RmluZVtpXS1Jbml6aW9baSsxXTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIFJbaV08PVJbaSsxXSB0aGVuIGFsdGV6emE6PTIqUltpXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgYWx0ZXp6YTo9MipSW2krMV07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmVhb3Zlcmw6PWJhc2UqYWx0ZXp6YTsgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmQ7CiAgICAgICAgICAgICAgICAgICB3cml0ZWxuKGFyZWFvdmVybCk7CiAgICAgICAgICAgICAgICAgIGFuczo9IGFucy1hcmVhb3Zlcmw7CiAgICAgICAgICAgICAgICBlbmQ7ICAgCiAgICBXcml0ZUxuKGFucyk7CgplbmQuCg==