[백준11662] 민호와 강호
민호와 강호의 출발좌표와 도착좌표를 입력받아, 두 사람이 일정한 속도로 도착지점까지 간다고 가정했을때, 두 사람의 최단거리를 구하는 문제이다. (인정 오차는 10^-6) IDEA 양 끝을 경계로 하여 이진탐색을 하면 쉽게 구할 수 있다. 이때 탐색 중단 기준은 좌우 경계의 거리가 10^-6이하인 경우이다. void getClosestDist( double mxl, double myl, double mxr, double myr, double kxl, double kyl, double kxr, double kyr) { if (getDist(mxl, myl, mxr, myr) < 0.00001 || getDist(kxl, kyl, kxr, kyr) < 0.00001) return; double mxm = (m..
[백준1168] 요세푸스 문제2 - Segment Tree
Segment Tree #include #include using namespace std; vector arr(12); vector tree(48); int init(int idx, int start, int end) { if (start == end) return tree[idx] = arr[start]; int mid = (start + end) / 2; return tree[idx] = init(idx*2, start, mid) + init(idx*2+1, mid+1, end); } void update(int node, int start, int end, int index, int diff) { if (!(start