Tf, Vf, Hf, Td, Vd, Hd = map(int, input().split())

td = Td - Tf

# cas tla
t_frib_tla = (2*Hf)**(1/2)

# frizbi na tleh
x_tla_fiz = (t_frib_tla) * Vf

caspsa = td + x_tla_fiz/Vd

if caspsa >= t_frib_tla:
	#print('aas')
	print(2*(caspsa-td)+Td)
else:
	t_ujamemo = -(Vd*td)/(Vf-Vd)
	kje_ujamemo = t_ujamemo * Vf
	visina = Hf - (t_ujamemo**2 / 2)
	pes_skok = (2*Hd/3)**(1/2) * 3
	if visina <= Hd:
		traj_skok = (-pes_skok + (pes_skok**2 - 6*visina)**(1/2))/-3
		if traj_skok <= t_ujamemo:
			#print('rh')
			print(t_ujamemo + kje_ujamemo/Vp + Tf)
		else:
			#print('hr')
			a = -1
			b = (pes_skok + 3*td)
			c = -pes_skok*td - Hf - (3/2)*td*td
			y1 = (-b + (b*b-4*a*c)**(1/2)) / (2*a)
			print(Tf + y1 + ((y1*Vf)/Vd))
	else:
		#print('hhr')
		a = -1
		b = (pes_skok + 3*td)
		c = -pes_skok*td - Hf - (3/2)*td*td
		y1 = (-b + (b*b-4*a*c)**(1/2)) / (2*a)
		tfmaks = (2*Hf - 2*Hd)**(1/2)
		#print(tfmaks)
		#print(y1)
		print((Tf + tfmaks +((tfmaks*Vf)/Vd)))
