Submission #89283

#TimeUsernameProblemLanguageResultExecution timeMemory
89283Mouhanad_HafezJakarta Skyscrapers (APIO15_skyscraper)C++11
10 / 100
3 ms1076 KiB
#include <bits/stdc++.h> using namespace std; long long int n,m,B[30005],P[30005]; queue< pair<long long,long long> > q; int vis[30005]; int main(){ cin>>n>>m; for(int i=0;i<m;i++){ cin>>B[i]>>P[i]; } q.push({0,0}); while(!q.empty()){ pair<long long,long long>temp=q.front(); q.pop(); long long int loc=temp.second; long long int pwr=temp.first; if(vis[loc]) continue; vis[loc]=1; if(B[loc]==B[1]){ cout<<pwr; return 0; } for(int i=0;i<m;i++){ if(abs(B[i]-B[loc])%P[loc]==0){ q.push({(pwr+abs(B[i]-B[loc])/P[loc]),i}); } } } cout<<-1; return 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...