void quicksort(int l, int r) {
if (l >= r) {
return;
}
auto i = l;
auto j = r;
auto top = list[i];
while (i < j) {
while (top <= list[j] && i < j) {
--j;
}
list[i] = list[j];
while (list[i] <= top && i < j) {
++i;
}
list[j] = list[i];
}
list[i] = top;
quicksort(l, i - 1);
quicksort(i + 1, r);
}