Caso # | Resultado | Tiempo | Memoria |
---|---|---|---|
#1 |
Correcto
|
0.006 s | 1 KBi |
#2 |
Correcto
|
0.006 s | 1 KBi |
#3 |
Correcto
|
0.007 s | 2 KBi |
#4 |
Error en tiempo de ejecución (NZEC)
Exited with error status 134 double free or corruption (out) run: line 1: 3 Aborted (core dumped) ./a.out |
0.006 s | 1 KBi |
#5 |
Correcto
|
0.006 s | 1 KBi |
#6 |
Correcto
|
0.006 s | 1 KBi |
#7 |
Tiempo límite excedido
|
1.014 s | 2 KBi |
#8 |
Tiempo límite excedido
|
0.571 s | 2 KBi |
#9 |
Tiempo límite excedido
|
0.467 s | 2 KBi |
#10 |
Tiempo límite excedido
|
0.744 s | 2 KBi |
#11 |
Tiempo límite excedido
|
1.073 s | 2 KBi |
#12 |
Tiempo límite excedido
|
1.023 s | 2 KBi |
#13 |
Tiempo límite excedido
|
0.614 s | 1 KBi |
#14 |
Tiempo límite excedido
|
0.576 s | 2 KBi |
#15 |
Tiempo límite excedido
|
0.679 s | 2 KBi |
#16 |
Incorrecto
|
0.095 s | 3 KBi |
#17 |
Correcto
|
0.103 s | 3 KBi |
#18 |
Tiempo límite excedido
|
0.819 s | 2 KBi |
#19 |
Tiempo límite excedido
|
0.67 s | 1 KBi |
#20 |
Tiempo límite excedido
|
0.565 s | 2 KBi |
#21 |
Tiempo límite excedido
|
0.534 s | 1 KBi |
#22 |
Tiempo límite excedido
|
0.464 s | 2 KBi |
#23 |
Tiempo límite excedido
|
0.57 s | 2 KBi |
#24 |
Tiempo límite excedido
|
0.804 s | 2 KBi |
#25 |
Tiempo límite excedido
|
0.792 s | 2 KBi |
#26 |
Tiempo límite excedido
|
1.036 s | 2 KBi |
#27 |
Tiempo límite excedido
|
0.624 s | 1 KBi |
#include <vector> #include <iostream> using namespace std; int partition(vector<int> &nums, int left, int right) { if (left >= right) { return left; } int mid = left + (right - left) / 2; int pivot = nums[right]; int pos = left; for (int i = left; i < right; ++i) { if (nums[i] < pivot) { swap(nums[i], nums[pos++]); } } swap(nums[right], nums[pos]); return pos; } void sort(vector<int> &nums, int left, int right) { if (left >= right) { return; } int pos = partition(nums, left, right); sort(nums, left, pos - 1); sort(nums, pos + 1, right); } int main() { int n; cin >> n; vector<int> nums(n); int left = -1; for (int i = 0; i < n; ++i) { cin >> nums[i]; if (i > 0 and nums[i] < nums[i-1] and left == -1) { left = i - 1; } } sort(nums, left, n - 1); for(int i = 0; i < nums.size(); i++) { cout << nums[i] << " "; } cout << endl; return 0; }