Submission #1312725

#TimeUsernameProblemLanguageResultExecution timeMemory
1312725wangzhiyi33Dreaming (IOI13_dreaming)C++20
Compilation error
0 ms0 KiB
#include "dreaming.h" #include<bits/stdc++.h> using namespace std; #define ii pair<long long ,long long> #define fir first #define sec second #define pb push_back const int maxn=1e5; vector<ii>adj[maxn+2]; bool vis[maxn+2]; ii mx[maxn+2]; void dfs(int cur,int par){ mx[cur]={0,0}; for(auto x : adj[cur]){ if(x.fir==par)continue; dfs(x.fir,cur); if(mx[x.fir].fir + x.sec>mx[cur].fir){ mx[cur].sec=mx[cur].fir; mx[cur].fir=mx[x.fir].fir + x.sec; } else if(mx[x.fir].fir + x.sec>mx[cur].sec){ mx[cur].sec=mx[x.fir].fir + x.sec; } } } long long brp; void reroot(long long cur,long long par,long long jrk){ vis[cur]=true; ii sblm=mx[cur]; if(-1!=par){ long long baru=mx[par].fir+jrk; if(mx[par].fir-jrk==mx[cur].fir){ baru=mx[par].sec+jrk; } if(mx[cur].fir<baru){ mx[cur].sec=mx[cur].fir; mx[cur].fir=baru; } else if(mx[cur].sec<baru){ mx[cur].sec=baru; } } brp=min(brp,mx[cur].fir); for(auto x : adj[cur]){ if(x.fir==par)continue; reroot(x.fir,cur,x.sec); } mx[cur]=sblm; } int travelTime(int n, int m, int l, int a[], int b[], int t[]) { for(int q=0;q<m;q++){ adj[a[q]].pb({b[q],t[q]}); adj[b[q]].pb({a[q],t[q]}); } vector<long long>apa; for(int q=0;q<n;q++){ if(vis[q])continue; dfs(q,-1); brp=1e18; reroot(q,-1,0); apa.pb(brp); } sort(apa.rbegin(),apa.rend()); long long ans=apa[0]; if(apa.size()>1){ ans=max(ans,apa[0]+apa[1]+l); } if(apa.size()>2){ ans=max(ans,apa[2]+apa[1]+2*l); } return ans; } signed main(){ int n,m,l; cin>>n>>m>>l; int a[n],b[n],t[n]; for(int q=0;q<m;q++){ cin>>a[q]>>b[q]>>t[q]; } cout<<travelTime(n,m,l,a,b,t)<<endl; }

Compilation message (stderr)

/usr/bin/ld: /tmp/cckE5j4f.o: in function `main':
grader.c:(.text.startup+0x0): multiple definition of `main'; /tmp/ccVHgETU.o:dreaming.cpp:(.text.startup+0x0): first defined here
collect2: error: ld returned 1 exit status