Submission #1312516

#TimeUsernameProblemLanguageResultExecution timeMemory
1312516galactic_programmerRobot (JOI21_ho_t4)C++20
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> #define int long long #define long long long using namespace std; const int N=1e5+5; const long inf=1e18; struct freq { int x,time; }; struct elem { int x,col,cost; bool operator<(const elem& e) const { return cost<e.cost; } }; freq f[N]; int n,m,i,j,x,y,c,p,d[N]; vector<elem> edge[N],uniq[N],multiple[N]; void dijkstra(int orig) { for(i=1;i<=n;++i) d[i]=inf; priority_queue<elem> q; q.push({orig,0,0}); d[orig]=0; while(!q.empty()) { auto e=q.top(); q.pop(); int x=e.x; //cout<<d[2]<<endl; for(auto f:uniq[x]) { int y=f.x; if(d[y]>d[x]) { d[y]=d[x]; q.push({y,0,d[y]}); } } for(auto f:multiple[x]) { int y=f.x,cost=f.cost; if(d[y]>d[x]+cost) { d[y]=d[x]+cost; q.push({y,0,d[y]}); } } } } signed main() { cin>>n>>m; for(i=1;i<=m;++i) { cin>>x>>y>>c>>p; edge[x].push_back({y,c,p}); } for(i=1;i<=n;++i) { for(auto e:edge[i]) { int x=e.x,c=e.col; if(f[c].time!=i) { f[c].time=i; f[c].x=1; } else f[c].x++; } for(auto e:edge[i]) { int x=e.x,col=e.col,cost=e.cost; if(f[col].x==1) uniq[i].push_back({x,col,cost}); else multiple[i].push_back({x,col,cost}); } } dijkstra(1); if(d[n]==inf) cout<<-1; else cout<<d[n]; return 0; }

Compilation message (stderr)

Main.cpp:3:14: error: 'long long long' is too long for GCC
    3 | #define long long long
      |              ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:6:7: note: in expansion of macro 'int'
    6 | const int N=1e5+5;
      |       ^~~
Main.cpp:3:19: error: 'long long long' is too long for GCC
    3 | #define long long long
      |                   ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:6:7: note: in expansion of macro 'int'
    6 | const int N=1e5+5;
      |       ^~~
Main.cpp:3:14: error: 'long long long' is too long for GCC
    3 | #define long long long
      |              ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:10:5: note: in expansion of macro 'int'
   10 |     int x,time;
      |     ^~~
Main.cpp:3:19: error: 'long long long' is too long for GCC
    3 | #define long long long
      |                   ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:10:5: note: in expansion of macro 'int'
   10 |     int x,time;
      |     ^~~
Main.cpp:3:14: error: 'long long long' is too long for GCC
    3 | #define long long long
      |              ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:14:5: note: in expansion of macro 'int'
   14 |     int x,col,cost;
      |     ^~~
Main.cpp:3:19: error: 'long long long' is too long for GCC
    3 | #define long long long
      |                   ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:14:5: note: in expansion of macro 'int'
   14 |     int x,col,cost;
      |     ^~~
Main.cpp:3:14: error: 'long long long' is too long for GCC
    3 | #define long long long
      |              ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:21:1: note: in expansion of macro 'int'
   21 | int n,m,i,j,x,y,c,p,d[N];
      | ^~~
Main.cpp:3:19: error: 'long long long' is too long for GCC
    3 | #define long long long
      |                   ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:21:1: note: in expansion of macro 'int'
   21 | int n,m,i,j,x,y,c,p,d[N];
      | ^~~
Main.cpp:3:14: error: 'long long long' is too long for GCC
    3 | #define long long long
      |              ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:23:15: note: in expansion of macro 'int'
   23 | void dijkstra(int orig)
      |               ^~~
Main.cpp:3:19: error: 'long long long' is too long for GCC
    3 | #define long long long
      |                   ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:23:15: note: in expansion of macro 'int'
   23 | void dijkstra(int orig)
      |               ^~~
Main.cpp: In function 'void dijkstra(long long int)':
Main.cpp:3:14: error: 'long long long' is too long for GCC
    3 | #define long long long
      |              ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:34:9: note: in expansion of macro 'int'
   34 |         int x=e.x;
      |         ^~~
Main.cpp:3:19: error: 'long long long' is too long for GCC
    3 | #define long long long
      |                   ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:34:9: note: in expansion of macro 'int'
   34 |         int x=e.x;
      |         ^~~
Main.cpp:3:14: error: 'long long long' is too long for GCC
    3 | #define long long long
      |              ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:38:13: note: in expansion of macro 'int'
   38 |             int y=f.x;
      |             ^~~
Main.cpp:3:19: error: 'long long long' is too long for GCC
    3 | #define long long long
      |                   ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:38:13: note: in expansion of macro 'int'
   38 |             int y=f.x;
      |             ^~~
Main.cpp:3:14: error: 'long long long' is too long for GCC
    3 | #define long long long
      |              ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:47:13: note: in expansion of macro 'int'
   47 |             int y=f.x,cost=f.cost;
      |             ^~~
Main.cpp:3:19: error: 'long long long' is too long for GCC
    3 | #define long long long
      |                   ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:47:13: note: in expansion of macro 'int'
   47 |             int y=f.x,cost=f.cost;
      |             ^~~
Main.cpp: In function 'int main()':
Main.cpp:3:14: error: 'long long long' is too long for GCC
    3 | #define long long long
      |              ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:68:13: note: in expansion of macro 'int'
   68 |             int x=e.x,c=e.col;
      |             ^~~
Main.cpp:3:19: error: 'long long long' is too long for GCC
    3 | #define long long long
      |                   ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:68:13: note: in expansion of macro 'int'
   68 |             int x=e.x,c=e.col;
      |             ^~~
Main.cpp:3:14: error: 'long long long' is too long for GCC
    3 | #define long long long
      |              ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:79:13: note: in expansion of macro 'int'
   79 |             int x=e.x,col=e.col,cost=e.cost;
      |             ^~~
Main.cpp:3:19: error: 'long long long' is too long for GCC
    3 | #define long long long
      |                   ^~~~
Main.cpp:2:18: note: in expansion of macro 'long'
    2 | #define int long long
      |                  ^~~~
Main.cpp:79:13: note: in expansion of macro 'int'
   79 |             int x=e.x,col=e.col,cost=e.cost;
      |             ^~~