Caso # | Resultado | Tiempo | Memoria |
---|---|---|---|
#1 |
Correcto
|
0.004 s | 1 KBi |
#2 |
Correcto
|
0.004 s | 1 KBi |
#3 |
Correcto
|
0.004 s | 1 KBi |
#4 |
Correcto
|
0.005 s | 1 KBi |
#5 |
Correcto
|
0.005 s | 1 KBi |
#6 |
Correcto
|
0.103 s | 10 KBi |
#7 |
Correcto
|
0.086 s | 10 KBi |
#8 |
Correcto
|
0.13 s | 9 KBi |
#9 |
Correcto
|
0.083 s | 10 KBi |
#10 |
Correcto
|
0.111 s | 11 KBi |
// Made by Daniel Diaz (@Danidiaztech) #include <bits/stdc++.h> using namespace std; #define endl '\n' #define fastInp cin.tie(0); cout.tie(0); ios_base::sync_with_stdio(0); #define forn(i, n) for (int i = 0; i < n; i++) // for in range in python #define FOR(i, a, b) for (int i = a; i < b; i++) // for in range in python #define int long long int #define double long double #define pb push_back #define ff first #define ss second #define mk make_pair typedef pair<int, int> pii; const int MAX = 1e6; const int MIN = -MAX; const int INF = LLONG_MAX; const int MINF = LLONG_MIN; const int MOD = 1e9 + 7; // int arr[MAX]; void solve_o2(){ int n; cin >> n; int a[n]; forn(i,n) cin >> a[i]; // O(n²) for (int i = 0; i < n; i++){ // Look for the next element greater than ai bool ok = true; for (int j = i + 1; j < n; j++){ if (a[j] > a[i]){ ok = false; cout << a[j] << " "; break; } } if (ok ) cout << -1 << " "; } cout << endl; } void solve(){ int n; cin >> n; int a[n]; int ans[n]; forn(i, n) cin >> a[i]; deque<int> d; for (int i = n - 1; i >= 0 ; i--){ while (!(d.empty()) && a[i] >= d.front()) d.pop_front(); ans[i] = d.size() == 0 ? -1: d.front(); d.push_front(a[i]); } forn(i,n){ cout << ans[i] << " "; } cout << endl; } int32_t main() { fastInp; #if LOCAL freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); #endif int tc = 1; cin >> tc; for (int t = 1; t <= tc; t++){ cout << "Case #" << t << ": "; solve(); } return 0; }