def prefix_maxima(values):
    if not values:
        return [], 0
    best = values[0]
    result = [best]
    comparisons = 0
    for index in range(1, len(values)):
        value = values[index]
        comparisons += 1
        if value > best:
            best = value
        result.append(best)
    return result, comparisons


if __name__ == '__main__':
    print(prefix_maxima([3, 1, 5, 5]))
