Language: C++

#include <bits/stdc++.h>
#define int long long
using namespace std;
const int INF = 1e9 + 7, MOD = 1e9 + 7;
const long long LINF = 1e18;
const int dx[4] = {1, 0, -1, 0}, dy[4] = {0, 1, 0, -1};
typedef pair<int, int> P;
int n, m, s, t;
struct edge {
	int to;
	int cost;
};
vector<edge> G1[1000001], G2[1000001];
int D1[1000001], D2[1000001];
void dijkstra(int s, vector<edge>* G, int* d);
signed main() {
	cin >> n >> m >> s >> t;
	int u[m], v[m], a[m], b[m];
	int u, v, a, b;
	for (int i = 0; i < m; i++) {
		cin >> u >> v >> a >> b;
		G1[u[i]].push_back({v, a});
		G1[v[i]].push_back({u, a});
		G2[u[i]].push_back({v, b});
		G2[v[i]].push_back({u, b});
	}
	dijkstra(s, G1, D1);
	dijkstra(t, G2, D2);
	vector<P> vec;
	for (int i = 1; i <= n; i++) {
		vec.push_back({D1[i] + D2[i], i});
	}
	sort(vec.begin(), vec.end());
	int Ans;
	for (int i = 1; i <= n; i++) {
		for (int j = 0; j < vec.size(); j++) {
			if (vec[j].second >= i) {
				Ans = vec[j].first;
				break;
			}
		}
		cout << 1000000000000000 - Ans << endl;
	}
	return 0;
}

void dijkstra(int s, vector<edge>* G, int* d) {
	priority_queue<P, vector<P>, greater<P>> que;
	fill(d, d + n + 1, INF);
	d[s] = 0;
	que.push(make_pair(0, s));
	while (que.size()) {
		P p = que.top();
		que.pop();
		int v = p.second;
		if (d[v] < p.first) continue;
		for (int i = 0; i < G[v].size(); i++) {
			edge e = G[v][i];
			if (d[e.to] > d[v] + e.cost) {
				d[e.to] = d[v] + e.cost;
				que.push(P(d[e.to], e.to));
			}
		}
	}
}

Compiler output:
a.cc: In function 'int main()':
a.cc:19:13: error: conflicting declaration 'long long int u'
   19 |         int u, v, a, b;
      |             ^
a.cc:18:13: note: previous declaration as 'long long int u [m]'
   18 |         int u[m], v[m], a[m], b[m];
      |             ^
a.cc:19:16: error: conflicting declaration 'long long int v'
   19 |         int u, v, a, b;
      |                ^
a.cc:18:19: note: previous declaration as 'long long int v [m]'
   18 |         int u[m], v[m], a[m], b[m];
      |                   ^
a.cc:19:19: error: conflicting declaration 'long long int a'
   19 |         int u, v, a, b;
      |                   ^
a.cc:18:25: note: previous declaration as 'long long int a [m]'
   18 |         int u[m], v[m], a[m], b[m];
      |                         ^
a.cc:19:22: error: conflicting declaration 'long long int b'
   19 |         int u, v, a, b;
      |                      ^
a.cc:18:31: note: previous declaration as 'long long int b [m]'
   18 |         int u[m], v[m], a[m], b[m];
      |                               ^
a.cc:21:21: error: no match for 'operator>>' (operand types are 'std::istream' {aka 'std::basic_istream<char>'} and 'long long int [m]')
   21 |                 cin >> u >> v >> a >> b;
      |                 ~~~ ^~ ~
      |                 |      |
      |                 |      long long int [m]
      |                 std::istream {aka std::basic_istream<char>}
In file included from /usr/include/c++/14/sstream:40,
                 from /usr/include/c++/14/complex:45,
                 from /usr/include/c++/14/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/14/bits/stdc++.h:127,
                 from a.cc:1:
/usr/include/c++/14/istream:170:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(bool&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  170 |       operator>>(bool& __n)
      |       ^~~~~~~~
/usr/include/c++/14/istream:170:7: note:   conversion of argument 1 would be ill-formed:
a.cc:21:24: error: cannot bind non-const lvalue reference of type 'bool&' to a value of type 'long long int*'
   21 |                 cin >> u >> v >> a >> b;
      |                        ^
/usr/include/c++/14/istream:174:7: note: candidate: 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(short int&) [with _CharT = char; _Traits = std::char_traits<char>]' (near match)
  174 |       operator>>(short& __n);
      |       ^~~~~~~~
/usr/include/c++/14/istream:174:7: note:   conversion of argument 1 would be ill-formed:
a.cc:21:24: error: invalid conversion from 'long long int*' to 'short int' [-fpermissive]
   21 |                 cin >> u >> v >> a >> b;
      |                        ^
      |                        |
      |                        long long int*
a.cc:21:24: error: cannot bind rvalue '(short int)((long long int*)(& u))' to 'short int&'
/usr/include/c++/14/istream:177:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(short unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  177 |       operator>>(unsigned short& __n)
      |       ^~~~~~~~
/usr/include/c++/14/istream:177:7: note:   conversion of argument 1 would be ill-formed:
a.cc:21:24: error: invalid conversion from 'long long int*' to 'short unsigned int' [-fpermissive]
   21 |                 cin >> u >> v >> a >> b;
      |                        ^
      |                        |
      |                        long long int*
a.cc:21:24: error: cannot bind rvalue '(short unsigned int)((long long int*)(& u))' to 'short unsigned int&'
/usr/include/c++/14/istream:181:7: note: candidate: 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(int&) [with _CharT = char; _Traits = std::char_traits<char>]' (near match)
  181 |       operator>>(int& __n);
      |       ^~~~~~~~
/usr/include/c++/14/istream:181:7: note:   conversion of argument 1 would be ill-formed:
a.cc:21:24: error: invalid conversion from 'long long int*' to 'int' [-fpermissive]
   21 |                 cin >> u >> v >> a >> b;
      |                        ^
      |                        |
      |                        long long int*
a.cc:21:24: error: cannot bind rvalue '(int)((long long int*)(& u))' to 'int&'
/usr/include/c++/14/istream:184:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  184 |       operator>>(unsigned int& __n)
      |       ^~~~~~~~
/usr/include/c++/14/istream:184:7: note:   conversion of argument 1 would be ill-formed:
a.cc:21:24: error: invalid conversion from 'long long int*' to 'unsigned int' [-fpermissive]
   21 |                 cin >> u >> v >> a >> b;
      |                        ^
      |                        |
      |                        long long int*
a.cc:21:24: error: cannot bind rvalue '(unsigned int)((long long int*)(& u))' to 'unsigned int&'
/usr/include/c++/14/istream:188:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  188 |       operator>>(long& __n)
      |       ^~~~~~~~
/usr/include/c++/14/istream:188:7: note:   conversion of argument 1 would be ill-formed:
a.cc:21:24: error: invalid conversion from 'long long int*' to 'long int' [-fpermissive]
   21 |                 cin >> u >> v >> a >> b;
      |                        ^
      |                        |
      |                        long long int*
a.cc:21:24: error: cannot bind rvalue '(long int)((long long int*)(& u))' to 'long int&'
/usr/include/c++/14/istream:192:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  192 |       operator>>(unsigned long& __n)
      |       ^~~~~~~~
/usr/include/c++/14/istream:192:7: note:   conversion of argument 1 would be ill-formed:
a.cc:21:24: error: invalid conversion from 'long long int*' to 'long unsigned int' [-fpermissive]
   21 |                 cin >> u >> v >> a >> b;
      |                        ^
      |                        |
      |                        long long int*
a.cc:21:24: error: cannot bind rvalue '(long unsigned int)((long long int*)(& u))' to 'long unsigned int&'
/usr/include/c++/14/istream:199:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long long int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  199 |       operator>>(long long& __n)
      |       ^~~~~~~~
/usr/include/c++/14/istream:199:7: note:   conversion of argument 1 would be ill-formed:
a.cc:21:24: error: invalid conversion from 'long long int*' to 'long long int' [-fpermissive]
   21 |                 cin >> u >> v >> a >> b;
      |                        ^
      |                        |
      |                        long long int*
a.cc:21:24: error: cannot bind rvalue '(long long int)((long long int*)(& u))' to 'long long int&'
/usr/include/c++/14/istream:203:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long long unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  203 |       operator>>(unsigned long long& __n)
      |       ^~~~~~~~
/usr/include/c++/14/istream:203:7: note:   conversion of argument 1 would be ill-formed:
a.cc:21:24: error: invalid conversion from 'long long int*' to 'long long unsigned int' [-fpermissive]
   21 |                 cin >> u >> v >> a >> b;
      |                        ^
      |                        |
      |                        long long int*
a.cc:21:24: error: cannot bind rvalue '(long long unsigned int)((long long int*)(& u))' to 'long long unsigned int&'
/usr/include/c++/14/istream:328:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(void*&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  328 |       operator>>(void*& __p)
      |       ^~~~~~~~
/usr/include/c++/14/istream:328:7: note:   conversion of argument 1 would be ill-formed:
a.cc:21:24: error: cannot bind non-const lvalue reference of type 'void*&' to an rvalue of type 'void*'
   21 |                 cin >> u >> v >> a >> b;
      |                        ^
/usr/include/c++/14/istream:219:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(float&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]'
  219 |       operator>>(float& __f)
      |       ^~~~~~~~
/usr/include/c++/14/istream:219:25: note:   no known conversion for argument 1 from 'long long int [m]' to 'float&'
  219 |       operator>>(float& __f)
      |                  ~~~~~~~^~~
/usr/include/c++/14/istream:223:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(double&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]'
  223 |       operator>>(double& __f)
      |       ^~~~~~~~
/usr/include/c++/14/istream:223:26: note:   no known conversion for argument 1 from 'long long int [m]' to 'double&'
  223 |       operator>>(double& __f)
      |                  ~~~~~~~~^~~
/usr/include/c++/14/istream:227:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__is