题目大意:
假定有n个整数,双调序列的第一个数是n个整数中的最大数,第二个数是n个整数中的最小数,第三个数是n个数中的第二大数,第四个数是n个数中的第二小数……取过的数不能再取,依次类推,直到结束。请你正确的帮他找出这n个数的双调序列。
整数保证都在longint范围内,即-2147483648~2147483647
对于100%的数据,n<=1000。
题解:
N≤1000,随便排个序,然后判断输出即可。
代码:
var
a:Array [0..1001] of longint;
i,j,n,m:longint;
begin
readln(n);
for i:=1 to n do readln(a[i]);
for i:=1 to n do
for j:=i+1 to n do
if a[i]>a[j] then
begin
a[0]:=a[i];
a[i]:=a[j];
a[j]:=a[0];
end;
for i:=1 to n div 2 do
begin
writeln(a[n-i+1]);
writeln(a[i]);
end;
if n mod 2<>0 then writeln(a[n div 2+1]);
end.