This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "race.h"
#include <bits/stdc++.h>
#define pii pair<int,int>
#define mp make_pair
#define pb push_back
#define st first
#define nd second
#define forr(i,A,B) for(int i=A;i<B;++i)
#define space ' '
#define endl '\n'
#define LL long long
using namespace std;
vector <pair<int,int> > adj[1005];
int k,ans=1e9;
void dfs(int x,int y,int len,int step);
int best_path(int N, int K, int H[][2], int L[])
{
for(int i=0;i<N;i++){
adj[H[i][0]].pb(mp(L[i],H[i][1]));
adj[H[i][1]].pb(mp(L[i],H[i][0]));
}
k=K;
for(int i=0;i<N;i++){
dfs(i,-1,0,0);
}
if(ans==1e9) return -1;
else return ans;
}
void dfs(int x,int y,int len,int step){
if(len==k){
ans=min(ans,step);
return;
}
for(int i=0;i<adj[x].size();i++){
if(adj[x][i].nd!=y){
dfs(adj[x][i].nd,x,adj[x][i].st+len,step+1);
}
}
}
Compilation message (stderr)
race.cpp: In function 'void dfs(int, int, int, int)':
race.cpp:39:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(int i=0;i<adj[x].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... |