Se espera que esta sea una pregunta matemática muy simple. Si tengo dos series de números, lo que es la manera más simple y más eficiente para comprobar si chocan, por ejemplo:Detectando si dos rangos de números chocan
10-20 and 11-14 // clash as B is contained in A
11-15 and 20-22 // don't clash
24-26 and 20-30 // clash as A is contained in B
15-25 and 20-30 // clash as they overlap at each end
Actualmente tengo este lío, pero tiene que haber una manera mucho más simple de hacer esta comprobación:
$clash = ($b1 >= $a1 && $b1 <= $a2)
|| ($b2 >= $a1 && $b2 <= $a2)
|| ($a1 >= $b1 && $a1 <= $b2)
|| ($a2 >= $b1 && $a2 <= $b2);
Solo iba a publicar eso :-) +1 por ser más rápido. –
o, sin negación: '$ clash = ($ b1 <= $ a2) && ($ a1 <= $ b2)' – sth
Gracias, eso es genial. –