传送门
高精度模板题。
type arr=array [0..5005] of int64;
var
x,y1,y2,y3,z1,z2,z3,bas,ans:arr;
s:ansistring;
sum,i,n,j:longint;
a,b,c,modd:int64;
procedure jia(var a:arr; b,c:arr);
var i:longint;
begin
fillchar(a,sizeof(a),0);
if (b[0]>c[0]) then a[0]:=b[0] else a[0]:=c[0];
for i:=1 to a[0] do a[i]:=b[i]+c[i];
for i:=1 to a[0] do begin
inc(a[i+1],a[i] div modd);
a[i]:=a[i] mod modd;
end;
if (a[a[0]+1]<>0) then inc(a[0]);
end;
procedure cheng(var a:arr; b:arr; c:int64);
var i:longint;
begin
a:=b;
for i:=1 to a[