/in/foo.cc:20:16: error: conflicting declaration 'int head'
int q[E << 2], head = 0, tail = 1;
^~~~
/in/foo.cc:19:5: note: previous declaration as 'int head [500010]'
int head[E], dis[E], oil[E];
^~~~
/in/foo.cc: In function 'void SPFA(int)':
/in/foo.cc:49:8: error: invalid types 'int [2000040][int [500010]]' for array subscript
q[head] = x;
^
/in/foo.cc:51:17: error: ISO C++ forbids comparison between pointer and integer [-fpermissive]
while (head <= tail) {
^~~~
/in/foo.cc:52:20: error: invalid types 'int [2000040][int [500010]]' for array subscript
int temp = q[head];
^
/in/foo.cc:53:7: error: lvalue required as increment operand
head++;
^~