14786

    백준 14786번: Ax+Bsin(x)=C ② (파이썬, 이분탐색)

    백준 14786번: Ax+Bsin(x)=C ② (파이썬, 이분탐색)

    이번 주에는 이분탐색을 공부 하고있었고, 이분탐색으로 푼 문제중 난도가 가장 높았던 문제였다. 다항함수와 삼각함수의 합으로 이루어진 그래프와 상수와의 교점을 구하는 문제이기에 답이 정수로 떨어지지 않고, 오차를 허용하는 형태의 처음보는 문제였다. 구간을 정한후 이분탐색을 해야 할것 같았는데 구간을 어떻게 정할지를 구하기 위해서 그래프부터 살펴보았다. 구간을 최대한 좁게 잡아야 탐색시간을 줄일 수 있다고 생각했기 때문이다. 처음에는 탐색구간을 정하기 위해 함수의 최대값을 가지는 지점을 구하려 하였으나 y =x는 x가 무한대일때 발산하고, y=sinx는 진동하므로 x+sinx는 발산한다. 따라서 구간설정에 극대점, 최댓값등은 구간설정에 이용할 수 없을것 같았다. 다음으로 함수의 그래프를 그려보면서 A,B,C..