코딩 테스트 연습을 하는데 벡터 관련 문제가 나왔다.
문제는 내가 벡터에 관련해서 무지하다는 점 ... !!
그래서 이에 대해 알아보고 공부해보려고 글을 쓰게 되었다.
Vector란 크기와 방향이 존재하는 물리량을 의미한다. (속도, 힘, 가속도 등)
Scalar가 크기만 있고 방향은 없는 것과 상반된다. (질량, 온도, 시간 등)
Vector 를 비유하자면 화살표 로 비유할 수 있다.
화살표의 길이 = 크기(힘의 세기, 이동 거리, 속력) 이고, 화살표의 방향 = 방향 이다.

우리가 그림으로는 화살표를 볼 수 있지만, 컴퓨터에게 이를 전달하려면 X, Y 좌표를 이용해서 전달해줘야한다.
예시를 들어보자.
V(3, 5) 의 경우 오른쪽으로 3칸, 위로 5칸 이동하라는 의미이다.

V(-3, -5) 의 경우 왼쪽으로 3칸, 아래로 5칸 이동하라는 의미이다.

만약, 인물 A가 집에서 출발해 편의점, 놀이터, 공원, 집을 순서대로 이동했다고 치자.
- 집 -> 편의점
V(3, 1)- 편의점 -> 놀이터
V(1, 5)- 놀이터 -> 공원
V(3, 6)- 공원 -> 집
V(2, 6)
이 경우 인물 A의 총 이동 거리는 몇일까?
이 경우 모든 X 와 Y 를 각각 더해주면 된다.
V((3 + 1 + 3 + 2), (1 + 5 + 6 + 6)) = V(9, 18)
만약 이동 거리를 곱하거나 빼거나 나누는 경우도 동일하게 각 X, Y 좌표에서 진행해주면 된다.
벡터(3, 4) 가 존재하는 경우 이것의 길이는 다음과 같이 구할 수 있다.
이것은 가로 길이가 3, 세로 길이가 4인 직각삼각형의 빗변 길이와 같으므로, 피타고라스 정리를 사용하여 √(3² + 4²) = √(9 + 16) = √25 = 5 로 구할 수 있다.

벡터는 위처럼 표기할 수 있다.