Submission #26353383


Source Code Expand

Copy
N = gets.to_i
P = 998244353
E = Array.new(N+1){[]}
$<.each{|ln|
u,v = ln.split.map(&:to_i)
E[u]<<v
E[v]<<u
}
Ds = lambda{|s,p=s|
vs = []
vs << [s]
ds = [-1]+[nil]*N
ds[p],ds[s] = -1,0
*q = s
while u = q.pop
d = ds[u]+1
vd = vs[d]||=[]
E[u].each{|v|
next if ds[v]
ds[v] = d
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
N = gets.to_i
P = 998244353
E = Array.new(N+1){[]}
$<.each{|ln|
	u,v = ln.split.map(&:to_i)
	E[u]<<v
	E[v]<<u
}

Ds = lambda{|s,p=s|
	vs = []
	vs << [s]
	ds = [-1]+[nil]*N
	ds[p],ds[s] = -1,0
	*q = s
	while u = q.pop
		d = ds[u]+1
		vd = vs[d]||=[]
		E[u].each{|v|
			next if ds[v]
			ds[v] = d
			vd << v
			q << v
		}
	end
	vs.pop if vs[-1].empty?
	next vs
}
Ds1 = Ds[1]
Vd1 = Ds1[-1][0]
DsVd1 = Ds[Vd1]
Vd2 = DsVd1[-1][0]
DsVd2 = Ds[Vd2]
D = DsVd1.size-1

if D&1<1
	Vc, = DsVd1[D/2]&DsVd2[D/2]
	Eds = E[Vc].map{|v| (Ds[v,Vc][D/2-1]||[]).size }
	p (Eds.inject(1){|a,n| a*(n+1)%P }-1-Eds.sum)%P
else
	Vc1, = DsVd1[D/2]&DsVd2[D/2+1]
	Vc2, = DsVd2[D/2]&DsVd1[D/2+1]
	p Ds[Vc1,Vc2][-1].size*Ds[Vc2,Vc1][-1].size%P
end

Submission Info

Submission Time
Task F - Diameter set
User ds14050
Language Ruby (2.7.1)
Score 0
Code Size 760 Byte
Status TLE
Exec Time 2208 ms
Memory 150988 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 500
Status
AC × 2
AC × 30
TLE × 7
Set Name Test Cases
Sample example_00.txt, example_01.txt
All even_random_00.txt, even_random_01.txt, even_random_02.txt, even_random_03.txt, even_random_04.txt, even_random_05.txt, even_random_06.txt, even_random_07.txt, even_random_08.txt, even_random_09.txt, even_random_10.txt, even_random_11.txt, even_random_12.txt, even_random_13.txt, even_random_14.txt, example_00.txt, example_01.txt, hand_00.txt, hand_01.txt, hand_02.txt, hand_03.txt, hand_04.txt, hand_05.txt, hand_06.txt, hand_07.txt, odd_random_00.txt, odd_random_01.txt, odd_random_02.txt, odd_random_03.txt, odd_random_04.txt, odd_random_05.txt, random_00.txt, random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt
Case Name Status Exec Time Memory
even_random_00.txt AC 544 ms 96056 KB
even_random_01.txt AC 490 ms 99296 KB
even_random_02.txt AC 687 ms 117660 KB
even_random_03.txt TLE 2208 ms 115808 KB
even_random_04.txt TLE 2207 ms 115396 KB
even_random_05.txt AC 515 ms 90584 KB
even_random_06.txt AC 555 ms 91828 KB
even_random_07.txt AC 690 ms 114944 KB
even_random_08.txt TLE 2207 ms 111948 KB
even_random_09.txt TLE 2207 ms 112904 KB
even_random_10.txt AC 542 ms 75148 KB
even_random_11.txt AC 568 ms 66952 KB
even_random_12.txt AC 852 ms 150988 KB
even_random_13.txt TLE 2208 ms 118368 KB
even_random_14.txt TLE 2207 ms 112160 KB
example_00.txt AC 57 ms 14324 KB
example_01.txt AC 52 ms 14392 KB
hand_00.txt AC 54 ms 14064 KB
hand_01.txt TLE 2207 ms 111900 KB
hand_02.txt AC 481 ms 55712 KB
hand_03.txt AC 56 ms 14084 KB
hand_04.txt AC 536 ms 72652 KB
hand_05.txt AC 722 ms 140708 KB
hand_06.txt AC 446 ms 52852 KB
hand_07.txt AC 738 ms 150024 KB
odd_random_00.txt AC 460 ms 56060 KB
odd_random_01.txt AC 490 ms 59336 KB
odd_random_02.txt AC 461 ms 58224 KB
odd_random_03.txt AC 491 ms 61004 KB
odd_random_04.txt AC 523 ms 64312 KB
odd_random_05.txt AC 504 ms 63588 KB
random_00.txt AC 454 ms 57604 KB
random_01.txt AC 525 ms 86084 KB
random_02.txt AC 554 ms 95356 KB
random_03.txt AC 478 ms 57732 KB
random_04.txt AC 502 ms 81756 KB
random_05.txt AC 494 ms 82336 KB


2025-04-05 (Sat)
14:12:52 +00:00