// UVa 11321 - Sort! Sort!! and Sort!!!
#include <iostream>
#include <algorithm>
using namespace std;
int n, m;
bool comp(int a, int b) {
int am = a % m;
int bm = b % m;
if (am != bm)
return am < bm;
int a2 = abs(a % 2);
int b2 = abs(b % 2);
if (a2 != b2)
return a2 == 1;
if (a2 == 1)
return a > b;
return a < b;
}
int main() {
cin >> n >> m;
while (n || m) {
int a[10000];
for (int i = 0; i < n; i++)
cin >> a[i];
sort(a, a + n, comp);
cout << n << " " << m << endl;
for (int i = 0; i < n; i++)
cout << a[i] << endl;
cin >> n >> m;
}
cout << n << " " << m << endl;
return 0;
}
Wednesday, December 9, 2015
UVa 11321 - Sort! Sort!! and Sort!!!
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment