Submission #3235309


Source Code Expand

#include <cstdio>
#include <algorithm>
#include <cstring>
#include <vector>
#include <queue>
#include <functional>
#include <utility>

using namespace std;
typedef long long lli;
typedef pair<lli,int> pli;

const lli inf=1e15;

struct edge{
	int t,w[2];
	edge() {}
	edge(int t,int a,int b):t(t){
		w[0]=a; w[1]=b;
	}
};

vector<edge> adj[100001];
int n,m,s,t;
lli dist[100001][2],mx[100001];
int vis[100001];

void dijk(int s,int t,int j) {
	priority_queue<pli,vector<pli>,greater<pli>> que;
	que.push(pli(0,s));
	fill(vis,vis+n+1,0);
	for(int i=1;i<=n;i++) dist[i][j] = inf;
	dist[s][j] = 0;

	while(!que.empty()) {
		lli cost=que.top().first;
		int cur=que.top().second;
		que.pop();

		if(vis[cur]) continue;
		vis[cur]=1;

		for(auto &it:adj[cur]) {
			if(!vis[it.t] && dist[it.t][j] > cost + it.w[j]) {
				dist[it.t][j] = cost+it.w[j];
				que.push(pli(dist[it.t][j],it.t));
			}
		}
	}
}


int main() {
	scanf("%d%d%d%d",&n,&m,&s,&t);
	for(int i=0,u,v,a,b;i<m;i++) {
		scanf("%d%d%d%d",&u,&v,&a,&b);
		adj[u].push_back(edge(v,a,b));
		adj[v].push_back(edge(u,a,b));
	}

	dijk(s,t,0);
	dijk(t,s,1);

	for(int i=n-1;i>=0;i--) {
		mx[i] = dist[i+1][0] + dist[i+1][1];
		if(i!=n-1) mx[i] = min(mx[i],mx[i+1]);
	}
	for(int i=0;i<n;i++) printf("%lld\n",inf-mx[i]);
	
	return 0;
}

Submission Info

Submission Time
Task D - Saving Snuuk
User vjudge5
Language C++14 (GCC 5.4.1)
Score 400
Code Size 1281 Byte
Status AC
Exec Time 100 ms
Memory 11132 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:54:31: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d%d%d%d",&n,&m,&s,&t);
                               ^
./Main.cpp:56:32: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d%d%d%d",&u,&v,&a,&b);
                                ^

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 400 / 400
Status
AC × 2
AC × 56
Set Name Test Cases
Sample sampleRnd.txt, sampleT.txt
All 00yorimichi.txt, 11_0.txt, 11_1.txt, 11_2.txt, 11_3.txt, 11_4.txt, 1n1m1.txt, 1oo_0.txt, 1oo_1.txt, 1oo_2.txt, 1oo_3.txt, 1oo_4.txt, dangou_0.txt, dangou_1.txt, dangou_2.txt, dangou_3.txt, dangou_4.txt, edge.txt, high_0.txt, high_1.txt, high_2.txt, high_3.txt, high_4.txt, low_0.txt, low_1.txt, low_2.txt, low_3.txt, low_4.txt, oo1_0.txt, oo1_1.txt, oo1_2.txt, oo1_3.txt, oo1_4.txt, path_0.txt, path_1.txt, path_2.txt, path_3.txt, path_4.txt, path_5.txt, rnd_0.txt, rnd_1.txt, rnd_2.txt, rnd_3.txt, rnd_4.txt, sampleRnd.txt, sampleT.txt, slast_0.txt, slast_1.txt, slast_2.txt, slast_3.txt, slast_4.txt, tlast_0.txt, tlast_1.txt, tlast_2.txt, tlast_3.txt, tlast_4.txt
Case Name Status Exec Time Memory
00yorimichi.txt AC 64 ms 9984 KB
11_0.txt AC 84 ms 9960 KB
11_1.txt AC 49 ms 7680 KB
11_2.txt AC 61 ms 8160 KB
11_3.txt AC 98 ms 11052 KB
11_4.txt AC 90 ms 10224 KB
1n1m1.txt AC 70 ms 8800 KB
1oo_0.txt AC 77 ms 9708 KB
1oo_1.txt AC 79 ms 9836 KB
1oo_2.txt AC 35 ms 6400 KB
1oo_3.txt AC 84 ms 10084 KB
1oo_4.txt AC 79 ms 9956 KB
dangou_0.txt AC 35 ms 6656 KB
dangou_1.txt AC 68 ms 8492 KB
dangou_2.txt AC 82 ms 9812 KB
dangou_3.txt AC 28 ms 5704 KB
dangou_4.txt AC 100 ms 11132 KB
edge.txt AC 76 ms 9984 KB
high_0.txt AC 36 ms 6408 KB
high_1.txt AC 45 ms 7168 KB
high_2.txt AC 97 ms 10676 KB
high_3.txt AC 7 ms 3840 KB
high_4.txt AC 73 ms 9284 KB
low_0.txt AC 34 ms 7424 KB
low_1.txt AC 38 ms 6876 KB
low_2.txt AC 81 ms 10068 KB
low_3.txt AC 73 ms 9672 KB
low_4.txt AC 57 ms 8240 KB
oo1_0.txt AC 86 ms 10364 KB
oo1_1.txt AC 72 ms 9472 KB
oo1_2.txt AC 63 ms 8700 KB
oo1_3.txt AC 48 ms 7812 KB
oo1_4.txt AC 61 ms 8588 KB
path_0.txt AC 65 ms 9088 KB
path_1.txt AC 65 ms 9088 KB
path_2.txt AC 32 ms 6400 KB
path_3.txt AC 40 ms 7168 KB
path_4.txt AC 22 ms 5376 KB
path_5.txt AC 57 ms 8576 KB
rnd_0.txt AC 85 ms 9792 KB
rnd_1.txt AC 95 ms 10656 KB
rnd_2.txt AC 13 ms 4096 KB
rnd_3.txt AC 92 ms 10432 KB
rnd_4.txt AC 68 ms 8680 KB
sampleRnd.txt AC 2 ms 3328 KB
sampleT.txt AC 2 ms 3328 KB
slast_0.txt AC 86 ms 9772 KB
slast_1.txt AC 41 ms 6400 KB
slast_2.txt AC 94 ms 10624 KB
slast_3.txt AC 72 ms 8780 KB
slast_4.txt AC 88 ms 10080 KB
tlast_0.txt AC 49 ms 7368 KB
tlast_1.txt AC 84 ms 9484 KB
tlast_2.txt AC 96 ms 10448 KB
tlast_3.txt AC 96 ms 11072 KB
tlast_4.txt AC 96 ms 11076 KB