const
fin = 'chon.inp'; fon = 'chon.out';
maxn = 1000005;
type hs = record
stt:longint;
ten:string;
toan,tin:longint;
end;
var
a:array[0..maxn] of hs;
n:longint;
procedure nhap;
var x,i:longint;
begin
readln(n);
for i:=1 to n do
begin
readln(a[i].ten);
readln(a[i].toan,a[i].tin);
a[i].stt:=i;
end;
end;
function ss(x,y:hs):boolean;
begin
if (x.toan+x.tin)>(y.toan+y.tin) then exit(true);
if (x.toan+x.tin)<(y.toan+y.tin) then exit(false);
if x.tin>y.tin then exit(true);
if x.tin<y.tin then exit(false);
if x.stt>y.stt then exit(false);
if x.stt<y.stt then exit(true);
exit(true);
end;
procedure qs(l,h:longint);
var x,t:hs;
i,j:longint;
begin
x:=a[(l+h) div 2];
i:=l;j:=h;
repeat
while ss(a[i],x)=true do inc(i);
while ss(x,a[j])=true do dec(j);
if i<=j then
begin
t:=a[i];a[i]:=a[j];a[j]:=t;
inc(i);dec(j);
end;
until i>j;
if L<j then qs(L,j);
if i<H then qs(i,H);
end;
procedure cach1;
begin
qs(1,n);
writeln(a[1].stt);
writeln(a[1].ten);
writeln(a[2].stt);
writeln(a[2].ten);
writeln(a[3].stt);
writeln(a[3].ten);
end;
procedure cach2;
var i,max1,max2,max3:longint;
begin
a[0].stt:=maxn;a[0].toan:=0;a[0].tin:=0;
max1:=0;max2:=0;max3:=0;
for i:=1 to n do
if ss(a[i],a[max1])=true then
begin
max3:=max2;
max2:=max1;
max1:=i;
end
else
if ss(a[i],a[max2])=true then
begin
max3:=max2;
max2:=i;
end
else
if ss(a[i],a[max3])=true then
max3:=i;
writeln(a[max1].stt);
writeln(a[max1].ten);
writeln(a[max2].stt);
writeln(a[max2].ten);
writeln(a[max3].stt);
writeln(a[max3].ten);
end;
begin
assign(input,fin);reset(input);
assign(output,fon);rewrite(output);
nhap;
cach1; //sort va tim 3 phan tu dau tien
//cach2; //duyet va tim 3 phan tu lon nhat
close(input);close(output);
end.
* Chuyên dạy lập trình ONLINE cho học sinh THCS, THPT *.
Mọi giao lưu, trao đổi, xin liên hệ: Lê Quang Vinh - zalo: 037.803.8755.
Page: Lớp học Code Sky
Group FB1: Ôn thi HSG9 - THTB - TS10 chuyên tin
Group FB2: Học Scratch - Ôn thi Tin học trẻ bảng A
Thứ Năm, 16 tháng 6, 2022
chon pascal (2 cách)
Đăng ký:
Đăng Nhận xét (Atom)
Không có nhận xét nào:
Đăng nhận xét
Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.