제출 #1193916

#제출 시각아이디문제언어결과실행 시간메모리
1193916ezzzay밀림 점프 (APIO21_jumps)C++20
21 / 100
225 ms64520 KiB
#include<bits/stdc++.h> using namespace std; #define ff first #define ss second #define pb push_back vector<int>v[4000]; int dst[4000][4000]; void init(int N, std::vector<int> H){ for(int i=0;i<N;i++){ for(int j=0;j<N;j++){ if(i==j)continue; dst[i][j]=1e5; } } for(int i=0;i<N;i++){ for(int j=i+1;j<N;j++){ if(H[j]>=H[i]){ v[i].pb(j); break; } } } for(int i=0;i<N;i++){ for(int j=i-1;j>=0;j--){ if(H[j]>=H[i]){ v[i].pb(j); break; } } } for(int i=0;i<N;i++){ queue<int>q; q.push(i); while(!q.empty()){ int a=q.front(); q.pop(); for(auto b:v[a]){ if(dst[i][b]==1e5){ dst[i][b]=dst[i][a]+1; q.push(b); } } } } } int minimum_jumps(int A, int B, int C, int D) { int ans= 1e5; for(int i=A;i<=B;i++){ for(int j=C;j<=D;j++){ ans=min(ans,dst[i][j]); } } if(ans==1e5)ans=-1; return ans; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...