Pagini recente » Cod sursa (job #1954749) | Cod sursa (job #2439117) | Cod sursa (job #21074) | Cod sursa (job #1870432) | Cod sursa (job #420769)
Cod sursa(job #420769)
program sume;
var a:array[1..25000,1..25001] of integer;
f:text;
p,n,i,j:word;
b:boolean;
begin
assign(f,'sume.in');
reset(f);
readln(f,p);
n:=trunc(sqrt(2*p))+1;
for i:=1 to n-1 do
for j:=i+1 to n do
begin
read(f,a[i,j]);
a[j,i]:=a[i,j];
end;
close(f);
b:=true;
if (a[n-2,n-1]+a[n-2,n]-a[n-1,n]) mod 2 = 0 then
begin
a[n-2,n+1]:=(a[n-2,n-1]+a[n-2,n]-a[n-1,n]) div 2;
for i:=1 to n-3 do
begin
a[i,n+1]:=a[n-2,i] - a[n-2,n+1];
if a[i,n+1]<=0 then
b:=false;
end;
a[n-1,n+1]:=a[n-1,1] - a[1,n+1];
a[n,n+1]:=a[n,1] - a[1,n+1];
if (a[n-1,n+1]<=0) or (a[n,n+1]<=0) then
b:=false;
end
else
b:=false;
assign(f,'sume.out');
rewrite(f);
if b then
begin
writeln(f,n);
for i:=1 to n do
write(f,a[i,n+1],' ');
end
else
writeln(f,-1);
close(f);
end.