We study a clustering problem where the goal is to maximize the coverage of the input points by k chosen centers. Specifically, given a set of n points P ? ?^d, the goal is to pick k centers C ? ?^d that maximize the service ?_{p?P}?(?(p,C)) to the points P, where ?(p,C) is the distance of p to its nearest center in C, and ? is a non-increasing service function ?: ?+ ? ?+. This includes problems of placing k base stations as to maximize the total bandwidth to the clients - indeed, the closer the client is to its nearest base station, the more data it can send/receive, and the target is to place k base stations so that the total bandwidth is maximized. We provide an n^{?^-O(d)} time algorithm for this problem that achieves a (1-?)-approximat...