var a:array[1..100000] of string; b,c:array[1..100000] of longint; str:string; i,k:longint; procedure qsort(l,r:longint); var i,j,t,mid1,mid2:longint; s:string; begin i:=l; j:=r; mid1:=b[(i+j) div 2]; mid2:=c[(i+j) div 2]; repeat while (c[i]>mid2) or (c[i]=mid2) and (b[i]<mid1) do inc(i); while (c[j]<mid2) or (c[j]=mid2) and (b[j]>mid1) do dec(j); if i<=j then begin s:=a[i]; a[i]:=a[j]; a[j]:=s; t:=b[i]; b[i]:=b[j]; b[j]:=t; t:=c[i]; c[i]:=c[j]; c[j]:=t; inc(i); dec(j); end; until i>j; if l<j then qsort(l,j); if i<r then qsort(i,r); end; begin for i:=1 to 4 do begin readln(str); a[i]:=copy(str,1,pos(' ',str)-1); delete(str,1,pos(' ',str)); val(copy(str,1,pos(' ',str)-1),b[i],k); delete(str,1,pos(' ',str)); val(str,c[i],k); end; qsort(1,4); for i:=1 to 4 do writeln(a[i],' ',b[i],' ',c[i]); end. /************************************************************** Problem: 2210 User: admin Language: Pascal Result: Wrong Answer ****************************************************************/