Caso # | Resultado | Tiempo | Memoria |
---|---|---|---|
#1 |
Correcto
|
0.006 s | 1 KBi |
#2 |
Correcto
|
0.007 s | 1 KBi |
#3 |
Correcto
|
0.007 s | 1 KBi |
#4 |
Correcto
|
0.006 s | 1 KBi |
#5 |
Correcto
|
0.005 s | 1 KBi |
#6 |
Correcto
|
0.007 s | 1 KBi |
#7 |
Tiempo límite excedido
|
0.602 s | 2 KBi |
#8 |
Tiempo límite excedido
|
0.641 s | 2 KBi |
#9 |
Tiempo límite excedido
|
0.504 s | 2 KBi |
#10 |
Tiempo límite excedido
|
0.681 s | 2 KBi |
#11 |
Tiempo límite excedido
|
1.065 s | 2 KBi |
#12 |
Tiempo límite excedido
|
0.516 s | 2 KBi |
#13 |
Tiempo límite excedido
|
0.706 s | 2 KBi |
#14 |
Tiempo límite excedido
|
0.665 s | 1 KBi |
#15 |
Tiempo límite excedido
|
0.654 s | 2 KBi |
#16 |
Incorrecto
|
0.097 s | 3 KBi |
#17 |
Correcto
|
0.102 s | 3 KBi |
#18 |
Tiempo límite excedido
|
0.69 s | 1 KBi |
#19 |
Tiempo límite excedido
|
0.645 s | 1 KBi |
#20 |
Tiempo límite excedido
|
0.714 s | 2 KBi |
#21 |
Tiempo límite excedido
|
0.668 s | 2 KBi |
#22 |
Tiempo límite excedido
|
0.473 s | 2 KBi |
#23 |
Tiempo límite excedido
|
1.026 s | 2 KBi |
#24 |
Tiempo límite excedido
|
0.568 s | 1 KBi |
#25 |
Tiempo límite excedido
|
1.038 s | 2 KBi |
#26 |
Tiempo límite excedido
|
0.447 s | 1 KBi |
#27 |
Tiempo límite excedido
|
0.716 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, max(left, 0), n - 1); for(int i = 0; i < nums.size(); i++) { cout << nums[i] << " "; } cout << endl; return 0; }