교점에 별 만들기

최진훈·2022년 4월 29일
0

programmers

목록 보기
68/73


주어진 방정식들을 가지고 접점을 잘 구하면 별채우는건 문제가 아닐 것 같다. 기울기같은 것을 이용해서 어떻게 구할 수 있지 않을까 하는 생각이든다.

source : https://m.blog.naver.com/tobsysco/90189606643
source : https://ardor-dev.tistory.com/46

이 문제의 핵심은 접점을 구하는 것일텐데 도무지 구하는법을 모르겠어서 인터넷을 찾아보았다. 기울기도 연산에 들어가긴 한다. 차근차근 식을 넘겨가면서 계산을 했으면 가능했을 수 도 있지만 식 자체가 복잡한 것은 사실이다.접점에 별을 찍는건 어렵지 않으니 해보자.

  1. 입력받은line에서 반복문으로 x1,y1``x2,y2에 해당하는 방정식을 가져온다.
  2. 계속 사용하게될BF-EDAEC-AFBAD-BCC로 선언한다.
  3. 두 직선이 평행하거나 나머지가0 즉, 교점이 정수가 아닌경우는 제외한다.
  4. coordinate라는 배열에 담긴 접점을 xy를 나누어 각각의 최대값과 최소값을 구한다.
  5. 최대,최소값을 토대로 .으로 채워진 도화지를 그린다.
  6. y.max()-yx.min()-x자리에 *을 찍는다.
  7. 각 줄사이에 " " 를 더하여 answer에 더한다.

레고레고

A,B,C를 선언할때 Long타입으로 바꾼뒤 계산하여 Int형으로 계산할때 발생하는 오버플로우를 방지하였다. 테스트도 바로 해보자.

통과~~~

profile
레고레고

0개의 댓글