Caso # | Resultado | Tiempo | Memoria |
---|---|---|---|
#1 |
Correcto
|
0.006 s | 1 KBi |
#2 |
Correcto
|
0.006 s | 1 KBi |
#3 |
Correcto
|
0.006 s | 1 KBi |
#4 |
Correcto
|
0.006 s | 1 KBi |
#5 |
Correcto
|
0.006 s | 1 KBi |
#6 |
Correcto
|
0.007 s | 1 KBi |
#7 |
Correcto
|
0.021 s | 2 KBi |
#8 |
Correcto
|
0.03 s | 2 KBi |
#9 |
Correcto
|
0.038 s | 2 KBi |
#10 |
Correcto
|
0.043 s | 2 KBi |
#11 |
Correcto
|
0.04 s | 3 KBi |
#12 |
Correcto
|
0.051 s | 3 KBi |
#13 |
Correcto
|
0.074 s | 2 KBi |
#14 |
Correcto
|
0.073 s | 2 KBi |
#15 |
Correcto
|
0.065 s | 2 KBi |
#16 |
Correcto
|
0.08 s | 2 KBi |
#17 |
Correcto
|
0.106 s | 2 KBi |
#18 |
Correcto
|
0.069 s | 2 KBi |
#19 |
Correcto
|
0.073 s | 2 KBi |
#20 |
Correcto
|
0.03 s | 2 KBi |
#21 |
Correcto
|
0.072 s | 2 KBi |
#22 |
Correcto
|
0.068 s | 2 KBi |
#23 |
Correcto
|
0.072 s | 2 KBi |
#24 |
Correcto
|
0.075 s | 3 KBi |
#25 |
Correcto
|
0.069 s | 3 KBi |
#26 |
Correcto
|
0.072 s | 2 KBi |
#27 |
Correcto
|
0.07 s | 2 KBi |
// #include <bits/stdc++.h> using namespace std; #define INF 1000000000 #define MOD 1000000007 #define PI 3.14159265 #define EPS 1e-9 #define Pi acos(-1.0) typedef pair<int, int> ii; typedef long long ll; typedef vector<ll> vll; typedef pair<ll,ll> pll; #define forr(i,a,b) for(int i=(a); i<(b); i++) #define clean(arr,val) memset(arr,val,sizeof(arr)) #define forn(i,n) forr(i,0,n) #define PB push_back typedef vector<int> vi; typedef vector<ii> vii; typedef vector<pll> vpll; /*CODE START HERE*/ int n; vi a; //Quick sort void quick(int l, int r){ bool equal = true; forr(i,l,r){ if(a[i] != a[i+1]){ equal = false; } } if(equal) return; // cout << "BEGINNING L " << l << " R " << r << "\n"; // forn(i,n) cout << a[i] << " "; // cout << "\n"; if(l >= r) return; int indPivot = (rand()%(r-l+1))+l; // cout << "IND PIVOT " << indPivot << "\n"; swap(a[l],a[indPivot]); int pivot = a[l]; int p = l; for(int i = l+1; i <= r; i++){ if(pivot >= a[i]){ swap(a[++p],a[i]); } // forn(i,n) cout << a[i] << " "; // cout << "\n"; } // forn(i,n) cout << a[i] << " "; // cout << "\n"; // cout << "P " << p << "\n"; // p--; swap(a[p],a[l]); if (l < (p-1)) quick(l,p-1); if ((p+1) < r) quick(p+1,r); } int main(){ ios::sync_with_stdio(0); cin >> n; a.assign(n,0); forn(i,n) cin >> a[i]; quick(0,n-1); cout << a[0]; forr(i,1,n){ cout << " " << a[i]; } cout << "\n"; return 0; }