제출 #23589

#제출 시각아이디문제언어결과실행 시간메모리
23589repeatingJakarta Skyscrapers (APIO15_skyscraper)C++11
36 / 100
969 ms58800 KiB
#include <bits/stdc++.h> #define F first #define S second #define P push #define pb push_back #define MEM(dp,i) memset(dp,i,sizeof(dp)) #define W while #define R return #define C continue #define SI size() #define ll int #define pll pair<ll,ll> #define SF(x) scanf("%I64d",&x) using namespace std; const long long INF = 2e9; long long MOD = 1e9+7; ll n,m; ll a[2222],b[2222]; vector<pll> adj[2222]; bool vis[2222]; priority_queue< pll , vector<pll> , greater<pll> > pq; ll dijkstra(){ pq.P({0,0}); W(!pq.empty()){ ll dis=pq.top().F,ver=pq.top().S; pq.pop(); if(ver==1)R dis; if(vis[ver])C; vis[ver]=1; ll node,d; for(int i=0;i<adj[ver].SI;i++){ node=adj[ver][i].F; d=dis+adj[ver][i].S; pq.P({d,node}); } } R -1; } int main(){ cin>>m>>n; for(int i=0;i<n;i++) cin>>a[i]>>b[i]; ll d; for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ if(i==j)C; d=abs(a[i]-a[j]); if(d%b[i])C; adj[i].pb({j,d/b[i]}); } } cout<<dijkstra(); }

컴파일 시 표준 에러 (stderr) 메시지

skyscraper.cpp: In function 'int dijkstra()':
skyscraper.cpp:32:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for(int i=0;i<adj[ver].SI;i++){
                      ^
#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...