Finding the largest clique in random graphs is a well known hard problem. It is known that a random graph G(n, 1/2) almost surely has a clique of size about 2 log n. A simple greedy algorithm finds a clique of size log n, and it is a long-standing open problem to find a clique of size (1 + ) log n in randomized polynomial time. In this paper, we study the generalization of finding the largest subgraph of any given edge density. We show that a simple modification of the greedy algorithm