이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "shortcut.h"
//#include "grader.cpp"
#include<bits/stdc++.h>
using namespace std;
long long M[501][501],Q[501],VIS[501];
vector<vector<pair<int,int>>>edges(501);
long long DIJK(int Node){
for(int i=0;i<101;i++)
VIS[i]=-1;
priority_queue<pair<long long,int>>lol;
lol.push({-Q[Node],Node});
while(lol.size()){
long long F=-lol.top().first;
int S=lol.top().second;
lol.pop();
if(VIS[S]+1)
continue;
VIS[S]=F+Q[S];
for(int i=0;i<edges[S].size();i++){
if(!(VIS[edges[S][i].first]+1))
lol.push({-(edges[S][i].second+F),edges[S][i].first});
}
}
long long maxer=0;
for(int i=0;i<101;i++){
if(i!=Node)
maxer=max(maxer,VIS[i]);
}
return maxer;
}
long long find_shortcut(int n,vector<int>l,vector<int>d,int c)
{
for(int i=0;i<n;i++)
Q[i]=d[i];
for(int i=0;i<n-1;i++)
edges[i].push_back({i+1,l[i]}),edges[i+1].push_back({i,l[i]});
for(int i=0;i<n;i++){
for(int l=i+1;l<n;l++){
long long MAXER=0;
edges[i].push_back({l,c});
edges[l].push_back({i,c});
for(int x=0;x<n;x++){
MAXER=max(MAXER,DIJK(x));
M[i][l]=MAXER;
}
edges[i].pop_back(),edges[l].pop_back();
}
}
long long miner=(long long)4e18;
for(int i=0;i<n;i++){
for(int l=i+1;l<n;l++){
miner=min(miner,M[i][l]);
}
}
return miner;
}
컴파일 시 표준 에러 (stderr) 메시지
shortcut.cpp: In function 'long long int DIJK(int)':
shortcut.cpp:19:14: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
19 | for(int i=0;i<edges[S].size();i++){
| ~^~~~~~~~~~~~~~~~
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |