AOJ0058 Orthogonal
問題リンク Orthogonal
- 解法
ABベクトルとCDベクトルの内積で解きました。
AB・CD = |AB||CD|cosθ
なので2ベクトルが直交していれば内積は0になります。
- ソース
import java.util.Scanner; //Orthogonal public class AOJ0058 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while(sc.hasNext()){ double[][] p = new double[4][2]; for(int i=0;i<4;i++){ p[i][0] = sc.nextDouble(); p[i][1] = sc.nextDouble(); } double vx1 = p[1][0]-p[0][0]; double vy1 = p[1][1]-p[0][1]; double vx2 = p[3][0]-p[2][0]; double vy2 = p[3][1]-p[2][1]; System.out.println((vx1*vx2+vy1*vy2)==0?"YES":"NO"); } } }