O(nlogk), use priority_queue to do this, create a max heapif(heap.size() < K or heap.top() > cur_dis), then update new data.