def bid_range_for_slot(slot, slot_clicks, reserve, bids): """ Compute the range of bids that would result in the bidder ending up in slot, given that the other bidders submit bidders. Returns a tuple (min_bid, max_bid). If slot == 0, returns None for max_bid, since it's not well defined. """ # Conveniently enough, bid ranges are the same for GSP and VCG: return GSP.bid_range_for_slot(slot, slot_clicks, reserve, bids)
def compute(s): (min, max) = GSP.bid_range_for_slot(s, clicks, reserve, other_bids) if max == None: max = 2 * min return (s, min, max)
def bid_range(slot, reserve): return GSP.bid_range_for_slot(slot, slot_clicks, reserve, bids)