Submission #374181

#TimeUsernameProblemLanguageResultExecution timeMemory
374181IwanttobreakfreeJakarta Skyscrapers (APIO15_skyscraper)C++17
0 / 100
1 ms364 KiB
#include <iostream> #include <vector> #include <queue> using namespace std; int main(){ cin.tie(NULL); ios::sync_with_stdio(false); int N,M,pos,S,buscar; cin>>N>>M; if(N==1)cout<<-1; else{ vector<pair<int,int> > doge(M); vector<int> distancia(N,1e9); for(int i=0;i<M;i++){ cin>>pos>>S; if(i==1)buscar=pos; doge[i]=make_pair(pos,S); } queue <pair<pair<int,int>,int> > q; q.push(make_pair(make_pair(doge[0].first,doge[0].second),0)); distancia[0]=0; while(!q.empty()){ int p=q.front().first.first; int mov=q.front().first.second; int jump=q.front().second; q.pop(); int po=p; int mo=mov; int jum=jump; while(p){ p-=mov; jump++; if(p<0)break; if(distancia[p]>jump){ distancia[p]=jump; //cout<<distancia[p]<<' '<<p<<' '; for(int i=0;i<M;i++)if(doge[i].first==p&&p!=buscar)q.push(make_pair(doge[i],jump)); } } while(po<N){ jum++; po+=mo; if(po>=N)break; if(distancia[po]>jum){ distancia[po]=jum; //cout<<distancia[po]<<' '<<po<<' '; for(int i=0;i<M;i++)if(doge[i].first==po&&po!=buscar)q.push(make_pair(doge[i],jum)); } } } if(distancia[buscar]==1e9)cout<<-1; else cout<<distancia[buscar]; } }

Compilation message (stderr)

skyscraper.cpp: In function 'int main()':
skyscraper.cpp:51:20: warning: 'buscar' may be used uninitialized in this function [-Wmaybe-uninitialized]
   51 | if(distancia[buscar]==1e9)cout<<-1;
      |                    ^
#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...