2011년 6월 20일 월요일

행렬식의 기하학적 의미(Geometrical Meaning of Determinant)

[경고] 아래 글을 읽지 않고 "행렬식의 기하학적 의미"를 보면 바보로 느껴질 수 있습니다.
1. 행렬
2. 행렬식


[그림 1] 2차원의 면적과 3차원의 부피(출처: wikipedia.org)

행렬식(行列式, determinant)과 부피(volume)와의 관계를 라플라스 전개(Laplace expansion)를 기반으로 수학적으로 유추해 보도록 하자. 고통스러운 과정이 되겠지만 행렬식과 부피의 관계를 이해하면 행렬식을 새로운 눈으로 좀더 편안하게 볼 수 있다. 정말 그렇겠냐고? 한 번 믿어봐라, 정말이다. 구체적인 증명으로 들어가기 전에 벡터(vector)를 이용해서 행렬식이 [그림 1]과 같은 1,2,3차원 공간의 방향성 있는 부피임을 느껴보자.

                       (1)

이미 벡터 이론(vector theory)으로 행렬식의 특성을 증명했지만 기하학적으로 더 음미해보도록 하자. 부피의 원래 의미는 당연히 3차원에서 정의하지만, 1차원에서 부피는 길이(length), 2차원에서 부피는 면적(area)이라 생각할 수도 있다. 또한 [그림 1]과 식 (1)의 $V_2$에 있는 면적은 길이를 수직 방향(normal direction)으로 쌓음이라 생각할 수 있다. 수직 방향이기 때문에 서로 다른 좌표계값을 식 (1)처럼 곱해야 한다. 수식에 기하학적 의미를 부여하기 위해 식 (2)처럼 곱하는 순서에 따라 면적의 부호가 다르게 생기도록 한다.

                              (2)

또한 [그림 1]과 식 (1)의 $V_3$에 있는 부피도 면적을 수직 방향으로 쌓은 총합으로 생각할 수 있다. 비스듬하게 쌓으면 수직과 함께 평행한 방향도 생기지만 늘어나는 부분이 없어서 평행 성분은 부피 기여에 넣지 않는다. 그래서 면적을 수직으로 쌓기 위해 어떤 좌표값과 이 좌표 방향으로 정의한 면적을 곱한다. 예를 들면, $x$축에 대해 면적을 쌓으려면 $yz$평면에 있는 면적값을 $x$축의 길이와 곱한다. 기하 구조를 수식에 집어넣기 위해 식 (2)와 같은 순서를 정의한다. 이 과정을 $n$차원 공간으로 확장하면 식 (3)의 라플라스 전개가 된다.

                       (3)

여기서 $C_{ij}$는 행렬 $\bf A$의 여인자(餘因子, cofactor), $M_{ij}$는 원소 $a_{ij}$의 소행렬식(小行列式, minor)이다. 예를 들어, 소행렬식 $M_{23}$은 아래와 같이 계산할 수 있다.

                       (4)

즉, $M_{23}$은 2행과 3열 원소 전체를 식 (4)처럼 삭제한 후 계산하는 행렬식이다. 식 (3)을 식 (1)과 유사하게 설명하자. $a_{ij}$는 어떤 좌표값이며 $M_{ij}$는 $a_{ij}$ 좌표에 수직한 $n-1$차원에서 정의한 부피이다. 또한 식 (3)에 있는 $(-1)^{i+j}$의 원래 의미는 순열(順列, permutation)이지만 식 (2)와 같은 기하구조를 $n$차원 공간으로 확장하는 표현식이 된다. 그러면 식 (3)은 자연스럽게 $n$차원 공간의 방향성 있는 부피가 된다.
이상의 논의는 직관에 기대고 있기 때문에 조금 억지스럽다. 하지만 행렬식이 식 (5)의 부피 공리(volume axioms)를 모두 만족함을 보임으로써, 행렬식과 부피의 수학적인 연관성을 명확히 할 수 있다.

                       (5)

식 (5)의 첫째식은 서로 수직인 단위 벡터(unit vector)들의 부피는 1임을 의미한다. 둘째식은 부피가 0이 아니기 위해서는 각 벡터들에 수직인 성분이 반드시 있어야 한다는 뜻이다. 벡터가 서로 평행하면 당연히 부피는 0이 된다. [그림 1]을 보면 이는 자명하다. 셋째식은 $n$차원 물체의 한쪽 방향을 키우면 부피는 키운 만큼 커진다는 뜻이다.

                          (6)

식 (6)의 행렬식 정의를 이용해 식 (5)를 차례로 증명해보자.

  • 식 (5)의 첫째식 증명
먼저 식 (5)의 첫째식은 항등 행렬(identity matrix)의 행렬식이 1이기 때문에 쉽게 증명할 수 있다.

  • 식 (5)의 둘째식 증명
                          (7)

여기서 벡터 차원(vector dimension) $n$은 행렬의 행(row) 개수 $n$과 동일하다고 가정한다. 식 (5)의 둘째식을 행렬식으로 표현하면 식 (7)과 같다. 식 (7)은 식 (3)에 있는 라플라스 전개로 증명한다. 임의의 행렬에 대해 라플라스 전개를 하면 행렬의 마지막 행인 $n$행[예를 들면 식 (5)에서 벡터 $\bar r_j$]과 $n-1$행[예를 들면 식 (5)에서 벡터 $\bar r_i$]에 있는 임의의 두 열은 식 (1)에 있는 면적 $V_2$처럼 표현된다. 식 (5)의 조건에서처럼 벡터 $\bar r_i$와 $\bar r_j$가 동일하다면 식 (1)에 의해 $V_2$ = $0$이 된다. 그러면 재귀 호출을 의미하는 식 (3)의 전체 행렬식은 당연히 0이 된다.[∵ $2 \times 2$ 행렬식에 부호 함수를 고려해서 다른 원소를 계속 곱하면 전체 행렬식이 됨은 라플라스 전개이므로] 고려하는 행이 식 (7)처럼 $n$행과 $n-1$행이 아니라면 한 번 교환된 행렬의 행렬식을 이용해서 주어진 행[식 (7)에서 벡터 $\bar r_i$]을 $n$행과 $n-1$행이 되도록 교환해주면 동일한 결과를 얻을 수 있다. 혹은 더 쉽게 증명하기 위해 행렬식의 공식을 활용하자. 한 번 교환된 행렬의 행렬식[$|{\bf A}_{ij}|$: $i,j$는 서로 다른 $i,j$ 행이나 열을 교환한 행렬식]은 원래 행렬식($|{\bf A}|$)에 ($-$)를 곱한 값이므로 $|{\bf A}_{ij}|$ = $-|{\bf A}|$가 성립한다. 하지만, 조건에서 $|{\bf A}_{ij}|$ = $|{\bf A}|$가 성립해야 하므로 $|{\bf A}|$ = $0$이 되어야 한다.

  • 식 (5)의 셋째식 증명
                          (8)

식 (5)의 셋째식을 더 구체적으로 쓴 식 (8)은 식 (6)에 의해 쉽게 증명된다. 행렬의 한 행[식 (8)에서 벡터 $\bar r_i$]을 $c$배하면 식 (6)에서 이 행의 원소[식 (6)에서 $a_{ij}$]가 항상 $c$배가 되므로 당연히 행렬식 전체가 $c$배가 된다. 식 (5)의 셋째식은 다음과 같이 일반화할 수 있다.

   (9)

식 (9)를 행렬식으로 표현하면 식 (10)과 같다. 식 (10)은 식 (6)으로 증명 가능하다. 식 (8)처럼 행렬의 한 행을 $\bar r_i + \bar r_j$로 표현해서 이를 식 (6)에 대입하고 분배 법칙을 적용하면 식 (10)이 증명된다.

                          (10)

식 (9)에서 그 부피는 방향성이 있기 때문에[∵ ($+$) 혹은 ($-$)가 될 수 있기 때문에] 벡터 $\bar r_i, \bar r_j$를 더한다 하더라도 그 최종 부피는 커질 수도 있고 작아질 수도 있다. $\bar r_j$ = $c\bar r_i$이면 식 (8)과 동일한 의미가 된다. 혹은 식 (7)에 의해 부피가 변하기 위해서는 $i$행을 제외한 모든 행 벡터(row vector)에 대해 $\bar r_j \ne c \bar r_k$[$k$ = $1,2, \cdots, n$, $k \ne i$]가 성립해야 한다.[혹은 $\bar r_j$는 $\bar r_k$와는 평행이 아니어야 한다.]


[그림 2] 3차원 벡터 공간의 예(출처: wikipedia.org)

조금 더 식 (10)의 성질을 고민하면 [그림 2]와 같은 벡터 공간(vector space)을 주로 다루는 선형 대수학(線型代數學, linear algebra)에 입문할 수 있다[1]. 선형 대수학은 연립 방정식을 깊이 이해하기 위해 벡터와 행렬의 다양한 연산을 다루는 학문이다. 벡터 공간은 벡터 연산이 정의된 공간이며 벡터 연산은 벡터의 합과 차, 실수배를 포함한다. 그래서 벡터 공간에서는 벡터의 길이를 늘리거나 줄일 수 있고, 두 벡터의 합이나 차를 해서 벡터 방향도 바꿀 수 있다. 또한 수학에서 공간(空間, space)은 더 폭넓은 개념을 가져서, 집합에 특정한 연산을 정의해 원소를 다양하게 계산할 수 있는 구조를 뜻한다.
따라서 식 (10)은 우리에게 $n$차원 공간에서 벡터를 기하학적으로 어떻게 이해해야 하는지 돌파구를 알려준다. 만약 식 (5)처럼 $n$차원 공간에서 $n$개의 벡터가 이미 있을 때 식 (10)에 있는 추가적인 행 벡터 $\bar r_j$는 어떻게 생각해야 할까? 새로운 $\bar r_j$는 이전의 $n$개 벡터와 비슷할 수도 있고 전혀 다를 수도 있다. 편하게 $\bar r_j$가 이전의 $n$개 벡터와 비슷해서 등호($=$) 관계가 성립한다고 가정하자. 그러면 $\bar r_j$를 이전의 $n$개 벡터[$\bar r_i$]에 대한 관계식으로 다음처럼 정의할 수 있다.

                         (11)

여기서 행 벡터 $\bar r_j$는 $n$개의 벡터[$\bar r_i$]로 표현된다고 가정한다. 식 (11)의 첫째식은 마치 직선[$y$ = $ax + b$]처럼 새로운 벡터 $\bar r_j$를 표현하고 있기 때문에 선형 결합(linear combination)이라 부른다. 선형 결합은 벡터 성분(vector component)과 직접 연결된다. 예를 들어, 식 (11)에 나온 $\alpha_i \bar r_i$와 $\alpha_i$는 벡터 $\bar r_j$의 구성 요소라서 각각 벡터 및 스칼라 성분이라 부른다. 식 (11)에 제시한 가정이 맞으려면 둘째식에 있는 $n$개의 벡터로 구성된 행렬이 역행렬(逆行列, inverse matrix)을 가지면 된다. 역행렬이 존재한다면 식 (11)을 행 벡터 $\alpha_i$에 대해 풀어 $\alpha_i$를 일의적으로[혹은 단 하나로] 결정할 수 있다. 이때 역행렬 여부를 판별할 수 있는 관계식은 행렬식이다. 만약 역행렬을 얻을 수 없다면 행렬식이 $0$인 경우이므로, 벡터 $\bar r_i$의 좌표값 자체를 바꾸어 행렬식이 $0$이 되지 않도록 할 수 있다. 만약 역행렬이 존재한다면[다른 말로 행렬식이 0이 아니면 혹은 $n$차원 공간의 부피가 0이 아니면] 식 (11)이 성립하기 때문에 식 (10)은 다음 식으로 간략화된다.

                         (12)

즉, 우리가 벡터 $\bar r_j$를 더했지만 실제 부피에 기여하는 부분은 벡터 $\bar r_i$와 평행한 성분뿐이다. 이 사실은 우리가 알고 있는 면적이나 부피 정의와 일치한다. 예를 들어 2차원에서 면적을 키우려면 밑변과 수직인 높이 방향으로 길이를 쌓아야 한다. 밑변과 평행인 방향으로 쌓으면 길이는 늘지 모르지만 면적은 늘어나지 않는다. 이와 같은 성질을 얻게 해주는 벡터 $\bar r_i$[$i$ = $1, 2, \cdots, n$]는 뭐라고 불러야 할까? 식 (11)에서 벡터 $\bar r_j$는 어떤 $n$차원 벡터이든 될 수 있기 때문에, 식 (11)에 있는 $n$개의 벡터[$\bar r_i$]는 $n$차원 공간을 생성(span)할 수 있다. 여기서 $n$개의 벡터 $\bar r_i$는 기저(基底, basis)가 되며, 기저의 개수가 벡터 공간의 차원(dimension)이다. 행렬식이 $0$이 되지 않는, 다른 말로 하면 $n$차원 공간의 부피가 $0$이 되지 않는 서로 다른 독립적인 벡터가 $n$차원 공간의 기저를 이룬다. 더불어 기저 벡터(basis vector)라는 고상한 개념을 쓰면, 선형 결합인 식 (11)을 수학적으로 더 세련되게 표현할 수 있다. 그래서 기저 벡터 $\bar r_i$를 자유롭게 선형 결합해 임의의 새로운 벡터 $\bar r_j$를 항상 만들 수 있다. 모든 기저 벡터간의 내적(inner product)이 $0$이어서 항상 서로 수직이라면[$i,j$가 다를 때 $\bar r_i \cdot \bar r_j$ = $0$], 이런 벡터 공간의 기저는 직교 기저(orthogonal basis)라고 부른다. 직교 기저로 구성한 벡터 공간에서는 기저 벡터의 성분(component)을 쉽게 계산할 수 있다. 벡터의 성분을 더 쉽게 계산하도록 직교 기저의 크기까지 $1$로 만든 경우는 정규 직교 기저(orthonormal basis)라고 한다. 따라서 정규 직교 기저 $\hat e_i$는 다음 관계가 성립한다.

                         (13)

예를 들어, 어떤 벡터 $\bar v$를 구성하는 정규 직교 기저 $\hat e_i$의 스칼라 성분(scalar component)은 $\bar v \cdot \hat e_i$이다. 그러면 임의 벡터를 다음처럼 정규 직교 기저와 벡터 성분의 곱으로 쓸 수 있다.

                         (14)

여기서 벡터 공간의 차원은 $n$이다.
벡터 공간의 원소인 $\bar r_j$는 $\bar r_i$에 종속되기 때문에, $\bar r_j$는 모든 $\bar r_i$[$i$ = $1, 2, \cdots, n$]선형 종속(linear dependence)이다. 거꾸로 선형 종속이 아닌 벡터 $\bar r_j$는 어떠한 선형 결합을 만들더라도 식 (11)처럼 표현할 수 없다.

                         (15)

식 (15)에 있는 $\bar r_j$는 모든 $\bar r_i$에 선형 독립(linear independence)이다. 따라서 선형 독립인 $n$개의 벡터 $\bar r_i$는 다음처럼 기술해야 한다.

                         (16)

식 (11)을 기반으로 식 (16)에 대한 행렬을 구성해 $\alpha_i$를 구해보자.

                  (17)

벡터 $\bar r_i$로 만든 행렬의 행렬식이 $0$이 아니면, 혹은 $\bar r_i$가 서로 선형 독립이면, 역행렬이 존재해서 $\alpha_i$ = $0$을 얻는다. 선형 독립인 행 벡터의 개수는 벡터 공간의 차원이면서, 행 벡터가 만드는 행렬의 계수(階數, rank) 혹은 계급수(階級)이다. 여기서 계수는 미지수와 곱해져 연계되는 수인 계수(係數, coefficient)와 한자가 다르며, 명확히 표현하려고 계급수라 쓸 수도 있다. 행렬식이 $0$이 아닌, 혹은 선형 독립인 행 벡터의 개수가 $n$인 $n \times n$ 행렬의 계급수는 $\operatorname{rank}({\bf A})$ = $n$이다. 행 벡터 대신 열 벡터를 사용해도 행렬의 계급수를 정의할 수 있다. 다만 정방 행렬(square matrix)이 아니면, 선형 독립인 행 벡터와 열 벡터 개수 중에서 최소값을 행렬의 계급수로 정의한다.
각 좌표축의 정사영 비율인 방향 도함수(direction cosine) $\cos \alpha_i$를 이용해서 벡터의 성분 $v_i$를 식 (14)와는 색다르게 정의한다.

                         (18)

여기서 $\cos \alpha_i$ = $(\bar v \cdot \hat e_i) / |\bar v|$이다. 방향 도함수를 식 (18)과 같이 모든 방향에 대해서 모은 $\sum \cos \alpha_i \hat e_i$는 $\bar v$가 지향하는 단위 벡터와 동일하다. 또한 방향 도함수가 정상적으로 정의되려면, 기저 벡터가 서로 독립이어야 한다. 왜냐하면 벡터의 성분 $v_i$를 딱 하나로 정하기 위해 서로 선형 독립인 기저 벡터로 구성한 행렬식은 $0$이 아니기 때문이다.

                         (19)

여기서 $\bar v$는 행 벡터(row vector)이다.
행렬식과 벡터에 대한 여러 가지 개념을 나열했지만 오해하지는 말자. 선형 대수학을 이런 방법으로 설명할 필요는 전혀 없다. 하지만 무미건조한 벡터 공간의 공리(axioms of vector space)가 그냥 생기지 않았고 현실적인 문제를 고민하여 공리 형태로 정리되었음을 느껴보자. 이런 관점으로 식 (11)을 고민해 보는 경험도 색다른 재미를 준다.

[참고문헌]
[1] 이희정, 신경희, "그라스만의 수학 인식과 벡터공간의 일반화", 한국수학사학회지, 제26권, 제4호, pp. 245–257, 2013년 8월.

[다음 읽을거리]
1. 가우스 소거법
2. QR 분해

댓글 40개 :

  1. 전공공부에 너무너무 많은 도움이 되고 있습니다.
    정말 고맙습니다.

    답글삭제
  2. :-) 행렬 부분은 난이도가 있는 부분이라 쓰느라 시간낭비한 것 같기도 하다는 생각을 했는데 도움이 되었다니 저도 좋습니다.

    답글삭제
  3. 와 정말 좋은 글입니다. 선형대수 공부에 많은 도움이 되었습니다.

    답글삭제
  4. 왜 다들 익명으로 댓글을 다시지?ㅋ.
    저도 도움 많이 되었습니다. 감사합니다~~

    답글삭제
  5. 댓글 달려고 없는 ID 만들기는 어렵지요. 충분히 이해합니다.

    kipid님도 좋은 자료 많이 만드세요. 감사합니다.

    답글삭제
  6. 시험공부하는데 이해되지 않았던 부분이 글을 읽고 다 이해되었습니다. 정말 감사합니다.

    답글삭제
  7. 저의 작은 노력이 도움되었다니 기쁘네요.
    정의가 복잡한 행렬식이지만 n차원 공간의 부피가 행렬식이라 정의하면 직관적으로 이해할 수 있습니다.

    답글삭제
  8. 작성자가 댓글을 삭제했습니다.

    답글삭제
    답글
    1. 그러시다면 자주 놀러오세요. ^^ 감사합니다.

      삭제
  9. 고등학교 2학년 때 처음으로 배우는게 행렬이죠. 더군다나 2차 정사각행렬만 배우다 보니 행렬이란 학문(정확히는 선형대수학)이 그렇게 어렵지 않다고 생각하는 경향이 짙은 것 같습니다.


    하지만 현실은 ...ㅠㅠ

    답글삭제
    답글
    1. 행렬 잘 하는 나라가 과학기술 선진국입니다. 우리도 열심히 노력해야지요. ^^

      삭제
  10. 오 정말 좋은 자료입니다..너무너무 감사합니다..

    답글삭제
  11. 야... 내공이 대단하시네요.
    많은 도움되었습니다.
    단, 수학전공자이고 지금 중학교수학강사인데도 오랫만에 보니까 한참을 고민하네요...
    의미에 대한 설명을 엄밀한 증명과 함께 넣어주셔서 감사합니다!

    답글삭제
  12. 그렇다면 4×4행렬식은 4차원의 방향성 있는 부피가 되는 건가요??! 상상도 못 했던거라 놀라 질문 드립니다.

    답글삭제
    답글
    1. 예, 맞습니다. 4차원에 물체를 만들었다면 그 부피는 4x4 행렬의 행렬식이 됩니다.
      이런 것을 생각해낸 수학자들이 대단하지요. ^^

      삭제
    2. 빠른 답변 정말 감사합니다!
      정말 수학자들 대단하네요. 어떻게 이런 생각을 해서 이걸 계산할 생각을 했을지. ㅎㅎ 근데 4×4 행렬식 풀어보니 3×3 행렬식이 4개나 나와서 식이 엄청 복잡해지네요 ㅋㅋㅋ
      4차원, 어떤 건지 상상은 안 가지만 수학을 이용해 계산할 수 있다는 것에 감탄하고 갑니다.
      좋은 하루 되세요 ^^

      삭제
  13. 식 (11) 부터 나오는 설명이 무슨 말인지 잘 모르겠어요...왜 말이 되려면 역행렬을 가져야 하는지..식 11에 의해서 식 10이 간략화되는 과정도 잘 와닿지가 않네요. 그 결과는 이해가 되지만요. 조금 더 자세히 설명해주실 수 있으신가요?

    답글삭제
    답글
    1. 본문을 조금 수정했습니다. 다시 한 번 봐주세요. ^^

      삭제
  14. 아 alpha_j를 구한다는 의미였군요.
    그런데, 저기서 역행렬이 0이라는 것은(즉 행들이 독립이 아니라는 것은) 무슨 의미인지 잘 와닿지가 않네요..
    r_j가 N-1개의 벡터로 구성된다는 것일 텐데 그럼 subspace?뭐 그런 개념이 필요하겠죠??(아직 선형대수를 안 공부해서...좀 공부하고 다시 읽어봐야겠네요)
    그리고, 행들이나 열들이 서로 같다면, 그중 두 행이나 두 열을 교환했을 때 행렬식의 부호가 바뀌어야 하지만, 같은 행렬이니까 또 행렬식의 값은 같아야 하니 행렬식은 0이라고 생각해도 문제가 없을까요?

    답글삭제
    답글
    1. 1. 그래서, 제시한 개념이 행렬식과 공간의 부피를 같이 생각하자는 것입니다.

      2. $\bar r_j$는 $n$개의 벡터로 구성할 수 있습니다. 이런 과정은 선형 결합(linear combination)이라 부릅니다.

      3. 맞습니다. 행렬식 공식 이용하면 더 쉽게 설명할 수 있겠네요. 본문에 이 내용도 추가하겠습니다. 감사합니다. ^^

      삭제
  15. 이곳에서 일신우일신(日新又日新)하신다니 영광이네요, 박성빈님. ^^

    답글삭제
  16. 헐 감사합니다. 항상 외우기만 했었는데.ㅠㅠㅠ

    답글삭제
  17. 이해가 안됬었는데 덕분에 많이 알아갑니다^^ 감사합니다 정리가 잘 되어 있어 이해하기 쉽네요

    답글삭제
    답글
    1. 도움이 되었다니 영광입니다, 양해린님. ^^

      삭제
  18. 행렬 심화 탐구를 위해 한번 찾아보고 갑니다. 유익한 정보 감사합니다.

    답글삭제
    답글
    1. Unknown님, 방문 감사해요. 좋은 성과 만드시길 바래요. ^^

      삭제
  19. 와우~~
    이렇게 설명하면 쉬운데 대부분의 선형대수학은 왜 이렇게 안가르치죠? 이렇게 이해하는건 아예다른과목인가요?
    그러면 혹시 어떤 과목을 들어야할끼요?

    답글삭제
    답글
    1. 선형 대수학과 같은 내용이에요.
      교과서는 체계적이고 엄밀하게 써야 하니까 허튼소리를 쓸 수 없어요.
      여기는 블로그라서 마음대로 아무거나 편하게 쓰니까 쉽게 읽힐 수 있어요. ^^

      삭제
  20. 여기 글에서
    "면적을 수직으로 쌓기 위해 어떤 좌표값과 이 좌표 방향으로 정의한 면적을 곱한다."는 무슨 말일까요?
    주어져 있는 2차원 면적을 또 다시 제의 3방향으로 정의하는 건가? 엄청 막히네요.

    답글삭제
    답글
    1. 부피를 만드는 경우를 생각해보세요.
      면적을 수직 방향으로 똑바로 쌓아야 부피가 됩니다. 비스듬하게 세우면 안되고요.
      이 개념을 설명하고 있어요.

      삭제
    2. 그...저기 맨 위 [그림1]에서의 평행사변형 말인데요.
      "길이를 수직으로 쌓아야한다"면 저 평행사변형도 길이를 수직으로 쌓아 만들 수 있다는 건가요?

      삭제
    3. 네. 밑변을 수직으로 쌓은 높이만 면적에 기여해요. 삼각형 면적이 정의되는 방식을 상기해보세요.

      삭제

욕설이나 스팸글은 삭제될 수 있습니다. [전파거북이]는 선플운동의 아름다운 인터넷을 지지합니다.