var a:array [0..1000] of longint; n,m,kq:longint; procedure nhap; var i:longint; begin readln(n,m); for i:=1 to n do read(a[i]); end; procedure qs(l,h:longint); var x,i,j,t:longint; begin x:=a[(l+h) div 2]; i:=l;j:=h; while i<=j do begin while a[i] < x do inc(i); while x < a[j] do dec(j); if i<=j then begin t:=a[i]; a[i]:=a[j]; a[j]:=t; inc(i);dec(j); end; end; if L<j then qs(L,j); if i<H then qs(i,H); end; function tknp(l,r,x:longint):longint; var m,kq:longint; begin kq:=-1; while l<=r do begin m:=(l+r) div 2; if a[m]<=x then begin kq:=m; l:=m+1; end else r:=m-1; end; exit(kq); end; procedure xuli; var i,j,k,max:longint; begin qs(1,n); max:=0; for i:=1 to n-2 do for j:=i+1 to n-1 do begin k:=tknp(j+1,n,m-a[i]-a[j]); if k>-1 then if a[i]+a[j]+a[k]>max then max:=a[i]+a[j]+a[k]; end; writeln(max); end; begin assign(input,'ndccard.inp');reset(input); assign(output,'ndccard.out');rewrite(output); nhap; xuli; 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ứ Hai, 9 tháng 5, 2022
NDCCARD PASCAL
Đă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.