Submission #9155555


Source Code Expand

#include<iostream>
#include<algorithm>
#include<string>
#include<vector>
#include<cmath>
#include<queue>
#define int long long
#define mod 1000000007
#define for0(i, n) for(int i = 0; i < (n); i++)
#define for1(i, n) for(int i = 1; i <= (n);i++)
#define mp make_pair
#define F first
#define S second
#define P pair<int,int>
using namespace std;
bool x[200000];
int xs[200000],xw[200000];
vector<pair<P,int>> vs[200000], vw[200000];
priority_queue<P, vector<P>, greater<P>> q1, q2;
int mutu(int va,bool s,bool w) {
	if (!va) return 1;
	int ans = 0;
	for0(i, vs[va].size()) {
		bool bs = false, bw = false;
		if (s&&(xs[vs[va][i].first.first] == (xs[va] - vs[va][i].first.second)))bs = true;
		if (w&&(xw[vw[va][i].first.first] == (xw[va] - vw[va][i].first.second)))bw = true;
		if(bs||bw){
			ans+=mutu(vs[va][i].first.first,bs,bw);
		}
	}
	return ans;
}
int mu2(int va) {
	if (!va) return 1;
	int ans = 0;
	for0(i, vw[va].size()) {
		if (xw[vw[va][i].first.first] == xw[va] - vw[va][i].first.second) {
			x[vw[va][i].second] = true;
			ans+=mu2(vw[va][i].first.first);
		}
	}
	return ans;
}
signed main(){
	int a, b, ans = 0;
	cin >> a >> b;
	for0(i, b) {
		int va, vb, vc, vd;
		cin >> va >> vb >> vc >> vd;
		va--, vb--;
		vs[va].push_back({ { vb,vc },i });
		vs[vb].push_back({ { va,vc },i });
		vw[va].push_back({ { vb,vd },i });
		vw[vb].push_back({ { va,vd },i });
	}
	for0(i, a) {
		xs[i] = 100000000000;
		xw[i] = 100000000000;
	}
	xs[0] = 0;
	xw[0] = 0;
	q1.push({ 0,0 });
	while (q1.size()) {
		P p = q1.top();
		q1.pop();
		if (xs[p.second] < p.first) continue;
		for0(i, (int)vs[p.second].size()) {
			if (xs[vs[p.second][i].first.first] > p.first + vs[p.second][i].first.second) {
				xs[vs[p.second][i].first.first] = p.first + vs[p.second][i].first.second;
				q1.push({ p.first + vs[p.second][i].first.second, vs[p.second][i].first.first });
			}
		}
	}
	q2.push({ 0,0 });
	while (q2.size()) {
		P p = q2.top();
		q2.pop();
		if (xw[p.second] < p.first)continue;
		for0(i, (int)vw[p.second].size()) {
			if (xw[vw[p.second][i].first.first] > p.first + vw[p.second][i].first.second) {
				xw[vw[p.second][i].first.first] = p.first + vw[p.second][i].first.second;
				q2.push({ p.first + vw[p.second][i].first.second, vw[p.second][i].first.first });
			}
		}
	}
	cout << mutu(a-1,true,true) << endl;
}

Submission Info

Submission Time
Task E - IOI のために
User ND76
Language C++14 (GCC 5.4.1)
Score 15
Code Size 2401 Byte
Status WA
Exec Time 2107 ms
Memory 53504 KiB

Judge Result

Set Name Sample Subtask1 Subtask2 Subtask3 Subtask4 Subtask5
Score / Max Score 0 / 0 0 / 5 15 / 15 0 / 20 0 / 35 0 / 25
Status
AC × 3
AC × 1
WA × 3
AC × 27
AC × 11
TLE × 4
AC × 41
TLE × 11
AC × 46
WA × 3
TLE × 15
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
Subtask1 sub1_01.txt, sub1_02.txt, sub1_03.txt, sub1_04.txt
Subtask2 sub2_01.txt, sub2_02.txt, sub2_03.txt, sub2_04.txt, sub2_05.txt, sub2_06.txt, sub2_07.txt, sub2_08.txt, sub2_09.txt, sub2_10.txt, sub2_11.txt, sub2_12.txt, sub2_13.txt, sub2_14.txt, sub2_15.txt, sub2_16.txt, sub2_17.txt, sub2_18.txt, sub2_19.txt, sub2_20.txt, sub2_21.txt, sub2_22.txt, sub2_23.txt, sub2_24.txt, sub2_25.txt, sample_01.txt, sample_02.txt
Subtask3 sub3_01.txt, sub3_02.txt, sub3_03.txt, sub4_3_01.txt, sub4_3_02.txt, sub4_3_03.txt, sub4_3_04.txt, sub4_3_05.txt, sub4_3_06.txt, sub4_3_07.txt, sub4_3_08.txt, sub4_3_09.txt, sub4_3_10.txt, sub4_3_11.txt, sub4_3_12.txt
Subtask4 sub2_01.txt, sub2_02.txt, sub2_03.txt, sub2_04.txt, sub2_05.txt, sub2_06.txt, sub2_07.txt, sub2_08.txt, sub2_09.txt, sub2_10.txt, sub2_11.txt, sub2_12.txt, sub2_13.txt, sub2_14.txt, sub2_15.txt, sub2_16.txt, sub2_17.txt, sub2_18.txt, sub2_19.txt, sub2_20.txt, sub2_21.txt, sub2_22.txt, sub2_23.txt, sub2_24.txt, sub2_25.txt, sub4_01.txt, sub4_02.txt, sub4_03.txt, sub4_04.txt, sub4_05.txt, sub4_06.txt, sub4_07.txt, sub4_08.txt, sub4_09.txt, sub4_10.txt, sub4_11.txt, sub4_12.txt, sub4_3_01.txt, sub4_3_02.txt, sub4_3_03.txt, sub4_3_04.txt, sub4_3_05.txt, sub4_3_06.txt, sub4_3_07.txt, sub4_3_08.txt, sub4_3_09.txt, sub4_3_10.txt, sub4_3_11.txt, sub4_3_12.txt, sample_01.txt, sample_02.txt, sample_03.txt
Subtask5 sample_01.txt, sample_02.txt, sample_03.txt, sub1_01.txt, sub1_02.txt, sub1_03.txt, sub1_04.txt, sub2_01.txt, sub2_02.txt, sub2_03.txt, sub2_04.txt, sub2_05.txt, sub2_06.txt, sub2_07.txt, sub2_08.txt, sub2_09.txt, sub2_10.txt, sub2_11.txt, sub2_12.txt, sub2_13.txt, sub2_14.txt, sub2_15.txt, sub2_16.txt, sub2_17.txt, sub2_18.txt, sub2_19.txt, sub2_20.txt, sub2_21.txt, sub2_22.txt, sub2_23.txt, sub2_24.txt, sub2_25.txt, sub3_01.txt, sub3_02.txt, sub3_03.txt, sub4_01.txt, sub4_02.txt, sub4_03.txt, sub4_04.txt, sub4_05.txt, sub4_06.txt, sub4_07.txt, sub4_08.txt, sub4_09.txt, sub4_10.txt, sub4_11.txt, sub4_12.txt, sub4_3_01.txt, sub4_3_02.txt, sub4_3_03.txt, sub4_3_04.txt, sub4_3_05.txt, sub4_3_06.txt, sub4_3_07.txt, sub4_3_08.txt, sub4_3_09.txt, sub4_3_10.txt, sub4_3_11.txt, sub4_3_12.txt, sub5_01.txt, sub5_02.txt, sub5_03.txt, sub5_04.txt, sub5_05.txt
Case Name Status Exec Time Memory
sample_01.txt AC 5 ms 12544 KiB
sample_02.txt AC 5 ms 12544 KiB
sample_03.txt AC 5 ms 12544 KiB
sub1_01.txt WA 195 ms 26112 KiB
sub1_02.txt AC 416 ms 46040 KiB
sub1_03.txt WA 65 ms 17408 KiB
sub1_04.txt WA 243 ms 31360 KiB
sub2_01.txt AC 5 ms 12544 KiB
sub2_02.txt AC 5 ms 12544 KiB
sub2_03.txt AC 5 ms 12544 KiB
sub2_04.txt AC 5 ms 12544 KiB
sub2_05.txt AC 5 ms 12544 KiB
sub2_06.txt AC 5 ms 12544 KiB
sub2_07.txt AC 5 ms 12544 KiB
sub2_08.txt AC 5 ms 12544 KiB
sub2_09.txt AC 5 ms 12544 KiB
sub2_10.txt AC 5 ms 12544 KiB
sub2_11.txt AC 5 ms 12544 KiB
sub2_12.txt AC 5 ms 12544 KiB
sub2_13.txt AC 5 ms 12544 KiB
sub2_14.txt AC 5 ms 12544 KiB
sub2_15.txt AC 5 ms 12544 KiB
sub2_16.txt AC 5 ms 12544 KiB
sub2_17.txt AC 5 ms 12544 KiB
sub2_18.txt AC 5 ms 12544 KiB
sub2_19.txt AC 5 ms 12544 KiB
sub2_20.txt AC 5 ms 12544 KiB
sub2_21.txt AC 5 ms 12544 KiB
sub2_22.txt AC 5 ms 12544 KiB
sub2_23.txt AC 5 ms 12544 KiB
sub2_24.txt AC 5 ms 12544 KiB
sub2_25.txt AC 5 ms 12544 KiB
sub3_01.txt TLE 2105 ms 41344 KiB
sub3_02.txt AC 497 ms 40952 KiB
sub3_03.txt AC 559 ms 43764 KiB
sub4_01.txt AC 7 ms 12672 KiB
sub4_02.txt TLE 2103 ms 12672 KiB
sub4_03.txt TLE 2103 ms 12672 KiB
sub4_04.txt TLE 2103 ms 12672 KiB
sub4_05.txt AC 7 ms 12672 KiB
sub4_06.txt AC 7 ms 12672 KiB
sub4_07.txt AC 6 ms 12672 KiB
sub4_08.txt TLE 2105 ms 42752 KiB
sub4_09.txt TLE 2105 ms 37504 KiB
sub4_10.txt TLE 2105 ms 37376 KiB
sub4_11.txt TLE 2105 ms 38528 KiB
sub4_12.txt TLE 2105 ms 38656 KiB
sub4_3_01.txt AC 57 ms 12672 KiB
sub4_3_02.txt AC 168 ms 12672 KiB
sub4_3_03.txt AC 11 ms 12672 KiB
sub4_3_04.txt TLE 2107 ms 12672 KiB
sub4_3_05.txt TLE 2103 ms 12672 KiB
sub4_3_06.txt TLE 2103 ms 12672 KiB
sub4_3_07.txt AC 7 ms 12672 KiB
sub4_3_08.txt AC 7 ms 12672 KiB
sub4_3_09.txt AC 7 ms 12672 KiB
sub4_3_10.txt AC 7 ms 12672 KiB
sub4_3_11.txt AC 6 ms 12672 KiB
sub4_3_12.txt AC 6 ms 12672 KiB
sub5_01.txt TLE 2105 ms 40920 KiB
sub5_02.txt TLE 2106 ms 53504 KiB
sub5_03.txt AC 523 ms 42872 KiB
sub5_04.txt AC 508 ms 41336 KiB
sub5_05.txt TLE 2105 ms 41216 KiB