Submission #898107

#TimeUsernameProblemLanguageResultExecution timeMemory
898107vjudge1Passport (JOI23_passport)C++17
0 / 100
1 ms348 KiB
#pragma GCC optimize("unroll-loops") #pragma gcc optimize("Ofast") #pragma GCC optimization("Ofast") #pragma optimize(Ofast) #include <bits/stdc++.h> using namespace std; #define int long long #define str string #define fastio ios::sync_with_stdio(0), cin.tie(0); #define fs first #define ss second #define endl '\n' #define all(x) (x).begin(), (x).end() #define len(x) x.size() #define print(a) \ for (auto &x : a) \ cout << x << " "; \ cout << endl; #define printmp(a) \ for (auto &x : a) \ cout << x.fs << " " << x.ss << endl; const int mod = 998244353; void solve(){ int n; cin >> n; vector<pair<int, int>> a(n); for(int i = 0; i < n; i ++) cin >> a[i].fs >> a[i].ss, a[i].fs --, a[i].ss --; int q; cin >> q; for(int i = 0; i < q; i ++){ int x; cin >> x; vector<int> k(n, 1e9); k[x - 1] = 0; int l = x - 1, r = x - 1; while(l >= 0 or r < n){ if(r == n or (l >= 0 and k[l] <= k[r])){ for(int j = a[l].fs; j <= a[l].ss; j ++) k[j] = min(k[j], k[l] + 1); l --; } else{ for(int j = a[r].fs; j <= a[r].ss; j ++) k[j] = min(k[j], k[r] + 1); r ++; } } if(l == -1 and r == n) cout << *max_element(all(k)) << endl; else cout << -1 << endl; } } signed main() { fastio int t = 1; // cin >> t; while (t--) { solve(); cout << endl; } }

Compilation message (stderr)

passport.cpp:2: warning: ignoring '#pragma gcc optimize' [-Wunknown-pragmas]
    2 | #pragma gcc optimize("Ofast")
      | 
passport.cpp:3: warning: ignoring '#pragma GCC optimization' [-Wunknown-pragmas]
    3 | #pragma GCC optimization("Ofast")
      | 
passport.cpp:4: warning: ignoring '#pragma optimize ' [-Wunknown-pragmas]
    4 | #pragma optimize(Ofast)
      |
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...