Усовершенствованные алгоритмы вращения баннера

Масштабирование изображения с CSS не совсем возможно, но подобный эффект может быть достигнут следующим образом, все же.

Использование эта разметка:

со следующим CSS:

#background {
    width: 100%; 
    height: 100%; 
    position: absolute; 
    left: 0px; 
    top: 0px; 
    z-index: 0;
}

.stretch {
    width:100%;
    height:100%;
}

и Вы должны быть сделаны!

для масштабирования изображения, чтобы быть "полным выходом за край" и поддержать соотношение сторон, можно сделать это вместо этого:

.stretch { min-width:100%; min-height:100%; width:auto; height:auto; }

Это удается вполне приятно! Если один размер будет обрезан, однако, он будет обрезан только на одной стороне изображения, вместо того, чтобы равномерно обрезаться с обеих сторон (и центрироваться). Я протестировал его в Firefox, Webkit и Internet  Explorer  8.

11
задан JJJ 20 July 2012 в 09:03
поделиться

3 ответа

Сложность больше всего связана с ограничением времени. Я бы разделил приоритет любого, кто не указывал временные ограничения, на 365 (год), а затем использовал бы время как часть весового коэффициента. Итак:

Client 1 priority: 10000/10 = 1000 
Client 2 priority: 1000/365 ~ 3 
Client 3 priority: 10000/365 ~30

Это должно дать вам довольно приличный индикатор приоритета. Теперь вы не можете смешивать и сопоставлять показы и клики, не так ли? Они либо идут по маршруту впечатления, либо по маршруту кликов. Поскольку вы не можете контролировать клики, но вы можете контролировать показы (по крайней мере, больше, чем клики), я бы взвесил это по показам.

Не можете ли вы смешивать и сопоставлять показы и клики? Они либо идут по маршруту впечатления, либо по маршруту кликов. Поскольку вы не можете контролировать клики, но вы можете контролировать показы (по крайней мере, больше, чем клики), я бы взвесил это по показам.

Не можете ли вы смешивать и сопоставлять показы и клики? Они либо идут по маршруту впечатления, либо по маршруту кликов. Поскольку вы не можете контролировать клики, но вы можете контролировать показы (по крайней мере, больше, чем клики), я бы взвесил это по показам.

8
ответ дан 3 December 2019 в 05:35
поделиться

Используйте генератор случайных чисел, чтобы выбрать, какое объявление показывать, и присвоите ему приоритет для каждого объявления. Установите более высокий весовой коэффициент для клиентов, которым нужно больше показов или у которых есть крайний срок. Вы можете увеличить весовой коэффициент, если время почти истекло.

После того, как клиент выполнит свои запрошенные показы, снизьте вес до 0, чтобы предотвратить показ рекламы.

Весовой коэффициент по умолчанию может быть равен 1 или около того, при этом клиентам разрешается доплачивать для повышения приоритета (не сообщая им механику - выставлять счет как «премиальное» размещение и т. Д.).


Изменить: детали взвешивания

Вы можете сделать это настолько простым или сложным, насколько захотите, но базовая версия будет включать следующие термины:

  • вес равен 0, если объявление достигло
  • базового количества покупных показов / кликов. взвешивание (1. 0, вероятно)
  • умножьте вес на implions_remaining / ВСЕГО оставшихся показов для всех клиентов
  • добавьте небольшую константу, если оставшиеся показы / клики малы - гарантирует, что они получат последние несколько, необходимые для завершения счета
  • к крайнему сроку клиенты: добавьте термин (оставшиеся показы / купленные показы) / (оставшееся время / общее время)

Клиенты крайнего срока должны быть ограничены 90% всех отображений страниц или чем-то еще, чтобы гарантировать, что они не вытеснят других. Последний термин указывает на «срочность» для клиентов с установленным сроком - она ​​увеличивается до бесконечности по мере достижения крайнего срока, поэтому вы должны поставить условие на оставшуюся часть времени, чтобы предотвратить проблемы с этим.

добавить термин для (оставшиеся показы / купленные показы) / (оставшееся время / общее время)

Клиенты крайнего срока должны быть ограничены 90% всех отображений страниц или чем-то еще, чтобы гарантировать, что они не вытеснят других. Последний термин указывает на «срочность» для клиентов с установленным сроком - она ​​увеличивается до бесконечности по мере достижения крайнего срока, поэтому вы должны поставить условие на оставшуюся часть времени, чтобы предотвратить проблемы с этим.

добавить термин для (оставшиеся показы / купленные показы) / (оставшееся время / общее время)

Клиенты крайнего срока должны быть ограничены 90% всех отображений страниц или чем-то еще, чтобы гарантировать, что они не вытеснят других. Последний термин указывает на «срочность» для клиентов с крайним сроком - она ​​увеличивается до бесконечности по мере достижения крайнего срока, поэтому вы должны поставить условие на оставшуюся часть времени, чтобы предотвратить проблемы с этим.

6
ответ дан 3 December 2019 в 05:35
поделиться

Мне очень нравится подход AlbertoPL, основанный на времени, но он не учитывает количество кликов. Легко продемонстрировать патологические случаи, когда клики релевантны:

  • Клиент A предлагает 1000 долларов за 1 клик или 10 000 показов
  • Клиент B предлагает 1000 долларов за 5000 кликов или 10 000 показов.

Любой разумный человек даст 1 клик. парень высший приоритет. Расчет на самом деле довольно тривиален: предположим, что ваш клик составляет 100 показов на клик.

  • Клиенту A требуется 10 000 показов или 1 клик, поэтому нам требуется минимум 100 показов для получения оплаты. При цене 1000 долларов за 100 показов вы можете рассчитать, что ваш клиент готов платить 10 долларов за показ.

  • Клиент Б хочет 10 000 показов или 5000 кликов. 5000 кликов требует 500 000 показов, мы точно соберем 10, 000 показов до этого момента, поэтому мы предполагаем, что клиент действительно предлагает заплатить 1000 долларов за 10 000 показов или 0,10 доллара за показ.

Мы максимизируем доход, максимизируя наши $$$$$ / показ, поэтому приоритет отдается клиенту А. Воспользуемся цифрами, приведенными в OP:

Клиент 1:

  • 10 000 показов в следующие 10 дней за 10 000 долларов США
  • = минимум 10 000 показов * 1 доллар США / показ / 10 дней
  • = 1000 долларов США / день.

Клиент 2:

  • 1000 показов за 100 долларов
  • = минимум 1000 показов * 0,01 доллара США за показ / 365 дней
  • = 0,27 доллара США в день.

Клиент 3:

  • 1000 кликов или 10 000 показов за 5 000
  • = минимум (100 000 показов для получения 1 000 кликов, 10 000 показов) = 10 000 показов за 5 000
  • = минимум 10 000 показов * 0,5 USD / показ / 365
  • = 13,7 USD / день.
3
ответ дан 3 December 2019 в 05:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: