전체 글(273)
-
[게임 수학] #13 | 삼각형(Triangle)
*인프런 강의를 듣고 공부한 글입니다. 1. 세 점의 아핀 조합 (Affine combination of Three points)이전에 두 점의 아핀 조합에서 계수의 합이 1이 되어야 한다는 걸 봤었습니다. 우리가 설정한 아핀 공간 내 규칙을 어기지 않으려면 마지막 차원의 값이 1이 되어야 하기 때문이었죠. 이러한 개념은 세 점의 아핀 조합으로 확장되어도 똑같이 적용됩니다. $$ P' = s \cdot P_1 + t \cdot P_2 + (1-s-t) \cdot P_3 $$ 위 식의 계산 결과는 항상 아핀 공간의 점을 보장 받게 되는 것이죠. 위의 식을 변형하여 다음과 같은 공간 형태로 나타낼 수도 있습니다. $$ P' - P_3 = s(P_1 - P_3) + t(P_2 - P_3) $$$$ \ri..
2023.11.27 -
[게임 수학] #12 | 직선(Line)
인프런 강의를 듣고 공부한 글입니다. 1. 아핀 조합(Affine Combination)이전에 아핀 공간에는 점과 이동 벡터가 존재하고, 점 + 점 연산은 불가능하다고 했었습니다. 하지만, 스칼라 값을 앞에 보조로 사용하여 곱하면 점 + 점 연산이 가능해집니다. $$ a\cdot P_1 +b\cdot P_2 = ? $$ \( P_1, \ P_2 \) 가 2차원의 점이라고 가정할 경우, 위 조합식은 다음과 같이 전개됩니다. $$ a(x_1, y_1, 1) + b(x_2, y_2, 1) = (ax_1+bx_2, \ ay_1 +by_2, \ a + b) $$ 이때, 아핀 공간이므로 마지막 차원의 값이 반드시 1이 되어야 점이 될 수 있습니다. 즉, \( a + b = 1 \) 이 되어야 가능하다는 말이지..
2023.11.26 -
[게임 수학] #11 | 내적(Dot Product)
인프런 강의를 듣고 공부한 글입니다. 1. 벡터의 내적(Dot Product)이란?벡터에는 벡터와 벡터의 덧셈, 벡터와 스칼라의 곱셈과 같은 연산을 통해 새로운 벡터를 생성해낼 수 있는 시스템이 존재합니다. 하지만 이것만으로는 부족하여 좀 더 응용할 수 있는 연산들을 수학자들이 추가하게 되었는데, 그것이 바로 벡터의 내적과 외적입니다. 여기에서는 내적에 대해서만 알아보도록 하겠습니다. 내적 연산벡터의 내적 연산은 벡터 내에서 같은 요소들끼리 서로 곱한 후, 더해주는 연산입니다. 예를 들어, \(v_1 = (a, b) \) 와 \(v_2 = (c, d) \) 와 같은 2차원 벡터를 서로 내적한다고 하면, 두 벡터의 대응되는 각 요소인 \(a\) 와 \(c\) , 그리고 \(b\) 와 \(d\) 를 다음..
2023.11.25 -
[게임 수학] #10 | 아핀 공간(Affine Space)
인프런 강의를 듣고 공부한 글입니다. 1. 아핀 공간이 필요한 이유이동 변환의 문제점컴퓨터 그래픽스에서 중요한 기능 중 하나가 바로 이동 기능이지만, 선형 변환 개념으로는 이러한 이동을 구현할 수가 없습니다. 선형 변환이라는 것은 항상 원점으로부터 출발해서 어디까지 이어지는 지에 대한 화살표 개념이기 때문이죠. 이러한 이유로, 선형 변환을 통해 다음과 같이 기저 벡터를 원점으로부터 분리해 이동시킬 수는 없는 노릇입니다. 행렬의 관점으로 본다면, 다음과 같은 행렬은 존재하지 않는 것이죠. $$ \begin{bmatrix}a & b\\c& d \end{bmatrix}\begin{bmatrix}x \\y \end{bmatrix}=\begin{bmatrix}x+e \\y+f \end{bmatrix} $$..
2023.11.24 -
[게임 수학] #9 | 역행렬(Inverse Matrix)
인프런 강의를 듣고 공부한 글입니다. 1. 역행렬(Inverse Matrix)의 개념역행렬이라고 하는 것은 역함수(Inverse Function)에 해당하는 개념이며, 행렬이란 것도 결국에는 선형 변환의 큰 관점에서 함수와 동일하기에, 역함수와 동일한 개념이라고 볼 수 있습니다. 잠깐 다시 이전 개념들을 복습해 보면, 역함수라는 것은 공역에서 정의역으로 대응되는 관계를 나타낸 함수이며, 오로지 전단사 함수일 때에만 역함수가 존재함을 보장받는다고 하였습니다. 이때, 어떤 전단사 함수와 그 역함수와의 합성 함수는 항등 함수가 된다는 걸 봤었죠. /* 공역으로 넘어간 대응 관계가 다시 정의역으로 넘어가면서, 원래 자기 자신에게로 대응되기 때문입니다.*/ $$ f \circ f^{-1} = i $$ 항등..
2023.11.23 -
[Programmers] Lv3. [1차] 셔틀버스 | C++
🔗문제 보러가기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 👨💻풀이 과정 제 문장 독해력에 하자가 있는건진 몰라도, 처음에 문제 읽고 무슨 소리지 했었습니다. 핵심은 셔틀 버스 운행 횟수인 \(n\) 번 내에 사무실에 갈 수 있는 가장 늦은 시간을 고르는 것이었네요. 단순 구현 문제이긴 한데, 시간과 관련된 문제는 항상 계산 부분에서 주의를 기울여야 하는 것 같습니다. 일단은 계산하기 쉽게, string을 int로 변환하는 작업을 먼저 해보죠. 1. String 👉🏻 Int로 변환하는 함수 작성 주어지는 시간은 "HH:MM" 형태를 띄고 있다고 문제..
2023.11.18