📄 reunion.pas
字号:
program reunion;
{$N+}
var
peo:array[1..1000]of longint;
jl:array[1..1000]of real;
name:array[1..1000]of string;
st:string;
t1,k,i,j,left,n,max:longint;
temp,jj:real;
ch:char;
function qiu(ss:real):longint;
var
t:longint;
begin
t:=0;
while ss-trunc(ss)>1e-6 do
begin
ss:=ss*10;t:=t+1;
end;
qiu:=t;
end;
begin
max:=0;
assign(input,'reunion.in');
assign(output,'reunion.out');
reset(input);rewrite(output);
i:=0;j:=0;n:=0;
repeat
inc(i);
n:=n+1;
jl[i]:=0;
read(peo[i]);read(jl[i]);
j:=j+peo[i];
name[i]:='';
read(ch);
read(ch);
repeat
name[i]:=name[i]+ch;
read(ch);
until (ch=#13)or(ch=#10);
readln
until (name[i]='Moscow');
for i:=1 to n-1 do
for k:=1 +i to n do
if jl[i]<jl[k] then
begin
temp:=jl[i];
jl[i]:=jl[k];
jl[k]:=temp;
t1:=peo[i];
peo[i]:=peo[k];
peo[k]:=t1;
st:=name[i];
name[i]:=name[k];
name[k]:=st;
end;
i:=0;
left:=0;
while left<j do
begin
i:=i+1;
left:=left+peo[i];
j:=j-peo[i];
end;
write(name[i],' ');
jj:=0;
for j:=1 to n do
jj:=jj+peo[j]*abs(jl[i]-jl[j]);
max:=qiu(jj);
writeln(jj:0:max);
close(input);close(output);
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -