<Problem>
https://www.spoj.com/PTIT/problems/BCMARA/
#include <iostream>
using namespace std;
void qSort(int* a, int* b, int* c, int* d, int left, int right) {
int x = a[(left + right) / 2];
int i = left;
int j = right;
do {
while (a[i] < x) i++;
while (a[j] > x) j--;
if (i <= j) {
swap(a[i], a[j]);
swap(b[i], b[j]);
swap(c[i], c[j]);
swap(d[i], d[j]);
i++;
j--;
}
} while (i < j);
if (i < right) qSort(a, b, c, d, i, right);
if (j > left) qSort(a, b, c, d, left, j);
}
int main() {
int n;
cin >> n;
int* a = new int[n + 1];
int* b = new int[n + 1];
int* c = new int[n + 1];
int* t = new int[n + 1];
for (int i = 1; i <= n; i++) {
cin >> a[i] >> b[i] >> c[i];
t[i] = a[i] * 3600 + b[i] * 60 + c[i];
}
qSort(t, a, b, c, 1, n);
for (int i = 1; i <= n; i++) {
cout << a[i] << " " << b[i] << " " << c[i] << endl;
}
return 0;
}