Submission #26823765


Source Code Expand

(N,X),*ABC = $<.map{|ln| ln.split.map(&:to_i) }
E = Array.new(N){[]}
ABC.each{|a,b,c|
	a -= 1; b -= 1
	E[a]<<[b,c]
	E[b]<<[a,c]
}
D = lambda{|ds,o,s|
	x,ds[s],*q = X-o,-o,s
	while a = q.pop
		next if x <= d = ds[a]
		E[a].each{|b,c|
			next if ds[b] <= c += d
			ds[b] = c
			q << b
		}
	end
	next ds,o
}

Ds = [nil]*N
Ds[0] = [[10**9]*N,0,0]
*Q = 0
while a = Q.pop
	ds,o = Ds[a] = D[*Ds[a]]
	E[a].each{|b,|
		next if Ds[b]
		Ds[b] = [ds.dup,ds[b]-ds[a]+o,b]
		Q << b
	}
end

puts(Ds.any?{|ds,o| ds.any? X-o }?'Yes':'No')

Submission Info

Submission Time
Task H - Shortest Path
User ds14050
Language Ruby (2.7.1)
Score 6
Code Size 555 Byte
Status AC
Exec Time 814 ms
Memory 85608 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 6 / 6
Status
AC × 3
AC × 27
Set Name Test Cases
Sample 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt
All 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_random_00.txt, 01_random_01.txt, 01_random_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 02_path_00.txt, 02_path_01.txt, 02_path_02.txt, 02_path_03.txt, 02_path_04.txt, 03_star_00.txt, 03_star_01.txt, 03_star_02.txt, 03_star_03.txt, 03_star_04.txt, 04_path_c_max_00.txt, 04_path_c_max_01.txt, 04_path_c_max_02.txt, 04_path_c_max_03.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 57 ms 14100 KiB
00_sample_01.txt AC 58 ms 14148 KiB
00_sample_02.txt AC 58 ms 14068 KiB
01_random_00.txt AC 261 ms 85304 KiB
01_random_01.txt AC 159 ms 85404 KiB
01_random_02.txt AC 254 ms 85336 KiB
01_random_03.txt AC 141 ms 85380 KiB
01_random_04.txt AC 266 ms 85548 KiB
01_random_05.txt AC 184 ms 85536 KiB
01_random_06.txt AC 251 ms 85464 KiB
01_random_07.txt AC 143 ms 85440 KiB
01_random_08.txt AC 263 ms 85512 KiB
01_random_09.txt AC 213 ms 85328 KiB
02_path_00.txt AC 258 ms 85360 KiB
02_path_01.txt AC 132 ms 85472 KiB
02_path_02.txt AC 258 ms 85408 KiB
02_path_03.txt AC 191 ms 85392 KiB
02_path_04.txt AC 256 ms 85500 KiB
03_star_00.txt AC 256 ms 85096 KiB
03_star_01.txt AC 131 ms 85316 KiB
03_star_02.txt AC 258 ms 85368 KiB
03_star_03.txt AC 130 ms 85204 KiB
03_star_04.txt AC 255 ms 85356 KiB
04_path_c_max_00.txt AC 729 ms 85608 KiB
04_path_c_max_01.txt AC 608 ms 85400 KiB
04_path_c_max_02.txt AC 651 ms 85404 KiB
04_path_c_max_03.txt AC 814 ms 85316 KiB