Submission #602096

# Submission time Handle Problem Language Result Execution time Memory
602096 2022-07-22T14:52:17 Z Yazan_Alattar Shortcut (IOI16_shortcut) C++14
Compilation error
0 ms 0 KB
#include "shortcut.h"#include <bits/stdc++.h>using namespace std;const int N=3e3+100;long long vis[N][N];vector<long long> dd;vector<pair<long long,int>> g[N];long long cc;int nn;void dfs(int u,int v){    for(auto x:g[u]){        if(x.first+vis[u][v]<vis[x.second][v]){            vis[x.second][v]=vis[u][v]+x.first;            dfs(x.second,v);        }    }}long long con(int l,int r){    g[l].push_back({cc,r});    g[r].push_back({cc,l});    for(int i=0;i<nn;i++){        for(int j=0;j<nn;j++){            vis[i][j]=1e18;        }    }    for(int i=0;i<nn;i++){        vis[i][i]=0;        dfs(i,i);    }    long long ret=0;    for(int i=0;i<nn;i++){        for(int j=0;j<nn;j++){            ret=max(ret,vis[i][j]+dd[i]+dd[j]);        }    }    g[l].pop_back();    g[r].pop_back();    return ret;}long long find_shortcut(int n,vector<int> l,vector<int> d,int c){    if(n>10)return 0;    nn=n;    cc=c;    for(auto x:d)dd.push_back(x);    for(int i=0;i<n;i++){        g[i].clear();    }    /*    for(int i=0;i<n;i++){        g[i].push_back({d[i],i+n});        g[i+n].push_back({d[i],i});    }    */    for(int i=0;i<n-1;i++){        g[i].push_back({l[i],i+1});        g[i+1].push_back({l[i],i});    }    long long ans=1e18;    for(int i=0;i<n;i++){        for(int j=i+1;j<n;j++){            long long me=con(i,j);            ans=min(ans,me);        }    }    return ans;}/*4 1010 20 200 40 0 304 12 2 21 10 10 1*/

Compilation message

shortcut.cpp:1:22: warning: extra tokens at end of #include directive
    1 | #include "shortcut.h"#include <bits/stdc++.h>using namespace std;const int N=3e3+100;long long vis[N][N];vector<long long> dd;vector<pair<long long,int>> g[N];long long cc;int nn;void dfs(int u,int v){    for(auto x:g[u]){        if(x.first+vis[u][v]<vis[x.second][v]){            vis[x.second][v]=vis[u][v]+x.first;            dfs(x.second,v);        }    }}long long con(int l,int r){    g[l].push_back({cc,r});    g[r].push_back({cc,l});    for(int i=0;i<nn;i++){        for(int j=0;j<nn;j++){            vis[i][j]=1e18;        }    }    for(int i=0;i<nn;i++){        vis[i][i]=0;        dfs(i,i);    }    long long ret=0;    for(int i=0;i<nn;i++){        for(int j=0;j<nn;j++){            ret=max(ret,vis[i][j]+dd[i]+dd[j]);        }    }    g[l].pop_back();    g[r].pop_back();    return ret;}long long find_shortcut(int n,vector<int> l,vector<int> d,int c){    if(n>10)return 0;    nn=n;    cc=c;    for(auto x:d)dd.push_back(x);    for(int i=0;i<n;i++){        g[i].clear();    }    /*    for(int i=0;i<n;i++){        g[i].push_back({d[i],i+n});        g[i+n].push_back({d[i],i});    }    */    for(int i=0;i<n-1;i++){        g[i].push_back({l[i],i+1});        g[i+1].push_back({l[i],i});    }    long long ans=1e18;    for(int i=0;i<n;i++){        for(int j=i+1;j<n;j++){            long long me=con(i,j);            ans=min(ans,me);        }    }    return ans;}/*4 1010 20 200 40 0 304 12 2 21 10 10 1*/
      |                      ^
/usr/bin/ld: /tmp/cccxoTm4.o: in function `main':
grader.cpp:(.text.startup+0x124): undefined reference to `find_shortcut(int, std::vector<int, std::allocator<int> >, std::vector<int, std::allocator<int> >, int)'
collect2: error: ld returned 1 exit status