time limit: 1000 ms
memory limit: 32768 kib
submit
statistic
discuss
problem description
輸入n個數,把所有奇數字置上的數從小到大排序,把偶數字置上的數從大到小排序。
input
輸入的第一行是乙個正整數
n(2<=n<=100)。
第二行是
n個用空格隔開的整數。
output
輸出只有一行
n個數,是按要求排序後的序列,用空格隔開。
sample input
61 2 3 4 5 6
sample output
1 6 3 4 5 2
hint
source
2011軟體1-5班《程式設計基礎》機試 tongjiantao
解題思路:我依然是用的快速排序(手敲)的方法,交叉排序,我是當成兩個陣列去分別排序,最後輸出的時候,稍微調整一下輸出格式(奇數偶數)。
ac**:
#include#includeusing namespace std;
void q_sort(int a,int l,int r)
a[i]=x;
q_sort(a,l,i-1);
q_sort(a,i+1,r);
}int main()
else
}q_sort(a,1,j-1);
q_sort(b,1,k-1);//呼叫快排函式對兩個陣列進行排序
i=1;
while(iif(n % 2 == 0)
else
}return 0;
}
交叉排序 sdut oj 1591
time limit 1000ms memory limit 32768k 輸入n個數,把所有奇數字置上的數從小到大排序,把偶數字置上的數從大到小排序。輸入的第一行是乙個正整數 n 2 n 100 第二行是 n個用空格隔開的整數。輸出只有一行 n個數,是按要求排序後的序列,用空格隔開。6 1 2 3...
SDUTOJ 1591 交叉排序
輸入n個數,把所有奇數字置上的數從小到大排序,把偶數字置上的數從大到小排序。input 輸入的第一行是乙個正整數n 2 n 100 第二行是n個用空格隔開的整數。output 輸出只有一行n個數,是按要求排序後的序列,用空格隔開。sample input 6 1 2 3 4 5 6sample ou...
SDUT 1591 交叉排序
time limit 1000ms memory limit 32768k 輸入n個數,把所有奇數字置上的數從小到大排序,把偶數字置上的數從大到小排序。輸入的第一行是乙個正整數 n 2 n 100 第二行是 n個用空格隔開的整數。輸出只有一行 n個數,是按要求排序後的序列,用空格隔開。6 1 2 3...