이 문제를 풀기 위해서는 Fagnano의 문제를 알아야 함.
Fagnano의 문제는 예각삼각형에서 둘레의 길이를 최소로 만드는 내접삼각형을 찾는 문제.
결론부터 말하자면 수심삼각형 (삼각형의 세 꼭짓점에서 대변에 내린 세 수선의 발로 이루어진 삼각형)이 문제의 해답이야.
참고로 직각삼각형이나 둔각삼각형의 경우는 이런 삼각형이 존재하지 않아.
다만 삼각형의 높이 중 가장 작은 것의 길이를 h라 할 때, 2h에 근접하는 내접삼각형을 만들 수는 있지.
증명 과정에서 최소 길이도 구했으니, 이 식을 이용하면 아래 문제를 매우 쉽게 풀 수 있지.
물론 이런걸 모른다면 좌표로 푸는게 제일 나음.
이제 원래 문제였던 작도 문제로 돌아가자.
Fagnano의 문제를 알아도 정석적으로 수선을 그려 수선의 발을 찾으면
유클리드 도구를 10번보다 적게 사용하는 풀이는 찾기 힘들거야.
하지만 한 변을 지름으로 하는 원을 그리면 수선을 직접 작도하지 않아도 4번 만에 수선의 발 2개를 찾을 수 있어.
그런데 만약 여기서 나머지 수선의 발을 찾기 위해서 수심을 이용하게 되면 원래의 '도구 10번 사용 풀이'와 다를 바가 없어지지.
'최소 경로' 풀이의 근본으로 돌아가서 대칭점을 이용하면, 아래와 같이 '도구 8번 사용 풀이'가 가능해져.
4번 써서 D, E 작도까진 했었는데 저런 방법이 있었구만
작도 최적화가 제일 까다로운듯 생각하기가 어려워...