Tengo un problema en el que tengo DOS rectángulos NO girados (dados como dos tuplas de puntos {x1 x2 y1 y2}) y quiero calcular su área de intersección. He visto más general respuestas a esta pregunta, por ejemplo, más rectángulos o incluso rotados, y me preguntaba si hay una solución mucho más sencilla ya que sólo tengo dos rectángulos no rotados.
Lo que imagino que debería ser alcanzable es un algoritmo que sólo utilice la suma, la resta y la multiplicación, posiblemente también abs(). Lo que ciertamente no debería usarse son min/max, equal, greater/smaller y demás, lo que haría la pregunta obsoleta.
Gracias.
EDIT 2: vale, se ha vuelto demasiado fácil usar min/max o abs(). ¿Puede alguien mostrar o refutar el caso de usar sólo add/sub/mul?
EDIT: vamos a relajarnos un poco, ¡sólo se prohíben las expresiones condicionales (por ejemplo, if, case)!
PD: Llevo media hora dándole vueltas, sin éxito, quizás ya soy demasiado mayor para esto :)
0 votos
Parece que espera obtener una respuesta utilizando únicamente las operaciones de campo ( $+$ , $-$ , $\times$ y $/$ ). Pero, ¿se puede obtener una fórmula para la distancia entre dos puntos de la línea real utilizando sólo esas herramientas? Si no lo consigues, deberías convencerte de que tu esperanza es desalentadora.
0 votos
Pensé que como el área de un cuadrado se calcularía como (a-b)*(c-d), un área negativa significaría que el área está girando en la otra dirección (si se usa el vector). Pero de todas formas creo que la pregunta está mal planteada. Perdón por perder el tiempo....