본문 바로가기

기하학9

6600 원의 둘레 https://www.acmicpc.net/problem/6600 6600번: 원의 둘레 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, 실수 x1, y1, x2, y2, x3, y3이 주어진다. 세 점으로 만들 수 있는 원의 지름은 백만을 넘지 않는다. www.acmicpc.net 접근 처음 문제를 보았을 땐 세 점 중 두 점은 원의 지름을 의미하는게 아닌가하는 생각이 들어 각 점의 길이를 구한 후 제일 긴 길이에 2를 곱했었다. 물론 잘못된 접근이다. 이 사진이 적절한 반례가 된다. 결국은 세 점으로 만들어진 삼각형의 외접원을 만들고 그 둘레를 구하는 것이 문제다. 외접원을 만들기 위해 원의 공식을 변형시켜 연립방정식을 조립한 후 해를 구하는 방법이 있지.. 2022. 9. 23.
1876 튕기는 볼링공 https://www.acmicpc.net/problem/1876 1876번: 튕기는 볼링공 첫째 줄에 테스트 케이스의 개수 N이 주어진다. 다음 N개 줄에는 볼링공과 핀 사이의 거리 T (16.0 ≤ T ≤ 18.0)와 공을 던진 각도 X (중심을 기준으로 계산, 10 ≤ X ≤ 80)가 주어진다. www.acmicpc.net 여러 가지 실수를 했기 때문에 조금 아쉬웠다. 문제 자체는 쉬운 편이었으나 삼각함수를 활용하다가 실수를 해서 자꾸 틀렸다. 접근 볼링공을 굴렸을 때 범퍼에 부딪치면 입사각과 같은 각도로 튕겨진다. 범퍼가 아래에만 있는게 아니라 위에도 있으므로 양 옆 범퍼를 모두 부딪치면서 전진하게 된다. 문제를 푸는 방법은 볼링공을 움직이면서 볼링공과 핀의 거리를 구했을 때 둘의 반지름을 합한 .. 2022. 9. 6.
4105 유클리드 https://www.acmicpc.net/problem/4105 4105번: 유클리드 유클리드는 자신의 공책에 다음과 같은 문제를 풀기 위한 복잡한 과정을 적어놓았다. 하지만, 컴퓨터를 이용하면 쉽게 구할 수 있다. 이차원 평면 위에 선분 AB와 점 C, 삼각형 DEF가 있다. 점 C는 www.acmicpc.net 기하학 문제를 풀 때 연습장을 쓰게 되더라. 그래도 다른 카테고리의 문제들은 애매한 부분이 남아 문제를 완벽히 풀었다는 생각이 잘 들지 않는데, 이런 문제들은 수식으로 정확히 표현되니까 정말 좋다. 접근 일단 삼각형과 평행사변형의 넓이가 같다는 조건을 쓰기 위해 삼각형의 넓이를 구해야 한다. 세 변만 주어졌으므로 헤론의 공식을 통해 삼각형의 넓이를 구해보았다. $$ \triangle DEF .. 2022. 9. 5.
3199 ABCD https://www.acmicpc.net/problem/3199 3199번: ABCD 정찰 부대가 지금 막 새로운 보고를 보내왔습니다. 그 보고의 내용은 바로, ABCD(Atomic Beryllium-Cesium Destroyer)라는, 이름만 들어도 소름이 끼치는 병기가 테러리스트들에게 넘어갔다는 것입니다. ABCD www.acmicpc.net 부품들이 4개의 레일 위를 이동하면서 정확히 직사각형을 만들 때 자폭한다. 폭발력은 직사각형의 넓이다. 최소한 넓이를 줄여야 한다. 기하학다운 문제다. 풀리니 짜릿하다! 접근 직사각형의 성질중에 마주보는 변의 길이가 같다는 점을 생각했다. 만약 A와 B의 길이가 C와 D의 길이와 다르다면 마주보는 변의 길이가 같을까? 정확하게 그리지 못했지만 아무튼 직사각형의.. 2022. 9. 4.
2527 직사각형 https://www.acmicpc.net/problem/2527 2527번: 직사각형 4개의 줄로 이루어져 있다. 각 줄에는 8개의 정수가 하나의 공백을 두고 나타나는데, 첫 4개의 정수는 첫 번째 직사각형을, 나머지 4개의 정수는 두 번째 직사각형을 각각 나타낸다. 단 입력 직사 www.acmicpc.net 접근 평범한 AABB를 구현하라는 문제 같다. 다른 점은 면이 겹쳐지는지, 선이 겹쳐지는지, 점이 겹쳐지는지, 안 만나는지를 출력해야 한다. 일단 만나지 않는 경우는 AABB에 나와있는 대로 하면 된다. 그런데 겹치는 상황에서 면이 겹쳐지는지 선이 겹쳐지는지 점이 겹쳐지는지를 알아야 한다. 사진에 표시한 점들은 직사각형을 나타내는 점들이다. 이 사진은 점이 겹쳐지는 상황을 의미하는데, 잘 보면 빨.. 2022. 9. 3.
18187 평면 분할 https://www.acmicpc.net/problem/18187 18187번: 평면 분할 무한한 크기의 이차원 평면에, 여러분은 최대 N개의 직선을 그릴 수 있다. 여러분은 기울기가 -1, 0, 1인 직선만 그릴 수 있다. 직선을 이용하여 평면을 최대 몇 개의 영역으로 분할할 수 있는지 구 www.acmicpc.net 접근 문제가 매우 짧아서 마음에 들었다. 기울기가 -1,0,1인 직선만 그릴 수 있다고 제한되어있어서 예시를 그리기 수월했다. 빈 공간을 직선이 가로지르면서 영역을 나누게 되지만, 직선을 교차했을 때도 영역이 나누어진다. 직선을 그릴 때 빈 공간을 가르는 것보다 다른 직선 위를 지나갔을 때 더 많은 영역이 생기기 때문에 최대 개수를 구하기 위해서는 매번 다른 직선 위를 지나갈 선을 그려.. 2022. 9. 3.