Submission #146041

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
1460412019-08-21 16:38:12str0ctJakarta Skyscrapers (APIO15_skyscraper)C++14
100 / 100
137 ms5732 KiB
#include<bits/stdc++.h>
using namespace std;
using pii=pair <int,int>;
int vis[30303];
int N,M;
pair <int,int> ipt[30303];
vector <int> V[30303];
priority_queue<pii,vector<pii>,greater<pii> > pq;
void dijkstra(){
pq.push({0,ipt[0].first});
vis[ipt[0].first]=0;
while(!pq.empty()){
int a=pq.top().first,b=pq.top().second;
pq.pop();
if(a<=vis[b]){
for(auto i:V[b]){
for(int k=1;b+i*k<N;k++){
if(vis[b+i*k]>a+k){
pq.push({a+k,b+i*k});
vis[b+i*k]=a+k;
}
auto it=lower_bound(V[b+i*k].begin(),V[b+i*k].end(),i);
if(it!=V[b+i*k].end()&&*it==i)break;
}
for(int k=1;b-i*k>=0;k++){
if(vis[b-i*k]>a+k){
pq.push({a+k,b-i*k});
vis[b-i*k]=a+k;
}
auto it=lower_bound(V[b-i*k].begin(),V[b-i*k].end(),i);
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

skyscraper.cpp: In function 'int main()':
skyscraper.cpp:40:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d%d",&N,&M);
     ~~~~~^~~~~~~~~~~~~~
skyscraper.cpp:42:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d%d",&ipt[i].first,&ipt[i].second);
         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#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...