public static <T extends Comparable<T>> List<T> nearestK(List<T>list, int k) {
		Heap<T> pq=new Heap<>(Collections.reverseOrder());
		for (T t:list)
			if(pq.size()<k)pq.offer(t);
			else if (pq.peek().compareTo(t)>0) {pq.poll();pq.offer(t);}
		List<T> rel=new ArrayList<>();
		for (int i=0;i<k;++i)rel.add(pq.poll());
		return rel;
	}