Submission #810238

#TimeUsernameProblemLanguageResultExecution timeMemory
810238vjudge1Railway Trip 2 (JOI22_ho_t4)C++17
16 / 100
2071 ms21476 KiB
#include <bits/stdc++.h> using namespace std; #define TL ios::sync_with_stdio(0),cin.tie(0),cout.tie(0); #define rall(s) s.rbegin(),s.rend() #define all(s) s.begin(),s.end() #define pb push_back #define fi first #define se second #define ll long long #define ld long double #define YES cout<<"YES\n" #define Yes cout<<"Yes\n" #define yes cout<<"yes\n" #define NO cout<<"NO\n" #define No cout<<"No\n" #define no cout<<"no\n" const int N = 5e5 + 9 , mod = 1e9 + 7; ll d[N] = {} , a[N] = {}, dp[N] , b[N] , c[N]; struct edge{ ll a , b, c; }; vector<pair<int,int>>v[N] , v1 , v2; vector<edge>vc; void solve(){ ll q , i , j , m ,n, z ,s = 0 , f , l , r , k , x , y , mn = 1e18 , mx = 0; cin>>n>>k; cin>>m; for(i = 1; i <= n; i++) a[i] = b[i] = i; for(i = 1; i <= m; i++){ cin>>l>>r; if(l > r){ x = max(l - k + 1 , r + 1); for(j = l ; j >= x; j--) a[j] = min(a[j] , r); }else { x = min(l + k - 1 , r - 1); for(j = l; j <= x; j++) b[j] = max(b[j] , r); vc.pb({l , x , r}); } } set<ll>st; cin>>q; while(q--){ cin>>x>>y; set<ll>st; for(i = 1; i <= n; i++){ d[i] = 1e9; st.insert(i); } queue<int>qq; qq.push(x); st.erase(x); d[x] = 0; while(!qq.empty()){ i= qq.front(); qq.pop(); auto it = st.lower_bound(i); while(st.size() && it != st.end() && *it <= b[i]){ d[*it] = d[i] + 1; qq.push(*it); st.erase(it); it = st.lower_bound(i); } while(st.size() && *st.begin() < i){ auto it = st.lower_bound(i); it--; if(*it < a[i]) break; d[*it] = d[i] + 1; qq.push(*it); st.erase(it); } } if(d[y] == 1e9) d[y] = -1; cout<<d[y]<<"\n"; } } int main(){ TL; /* #ifndef ONLINE_JUDGE freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); #endif */ int t = 1; //cin>>t; while(t--) { solve(); } } // Author : حسن

Compilation message (stderr)

Main.cpp: In function 'void solve()':
Main.cpp:35:26: warning: unused variable 'z' [-Wunused-variable]
   35 |     ll q , i , j , m ,n, z ,s = 0 , f , l , r , k , x , y , mn  = 1e18 , mx = 0;
      |                          ^
Main.cpp:35:29: warning: unused variable 's' [-Wunused-variable]
   35 |     ll q , i , j , m ,n, z ,s = 0 , f , l , r , k , x , y , mn  = 1e18 , mx = 0;
      |                             ^
Main.cpp:35:37: warning: unused variable 'f' [-Wunused-variable]
   35 |     ll q , i , j , m ,n, z ,s = 0 , f , l , r , k , x , y , mn  = 1e18 , mx = 0;
      |                                     ^
Main.cpp:35:61: warning: unused variable 'mn' [-Wunused-variable]
   35 |     ll q , i , j , m ,n, z ,s = 0 , f , l , r , k , x , y , mn  = 1e18 , mx = 0;
      |                                                             ^~
Main.cpp:35:74: warning: unused variable 'mx' [-Wunused-variable]
   35 |     ll q , i , j , m ,n, z ,s = 0 , f , l , r , k , x , y , mn  = 1e18 , mx = 0;
      |                                                                          ^~
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...