Блог пользователя Mikes

Автор Mikes, 14 лет назад, По-русски

Добрый вечер!

Подскажите, пожалуйста, как решаются задачи B и G c западного четвертьфинала.

Заранее спасибо!

  • Проголосовать: нравится
  • 0
  • Проголосовать: не нравится

14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Задача B:
Делается прекальк: 1000 отрезков длины 10^6
И ответ на задачу есть следующее F(n) - F(m+2010-1), где
F(n) -  количество пар чисел, больший элемент из которых не превосходит n. Для подсчета значения этой функции используем заготовленный прекальк, и для "огрызка" считаем втупую...
Прекальк пишется тупо и готовится минут 5..
  • 14 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Спасибо!.. интересно, как можно решить ее без прекалька...
    • 14 лет назад, # ^ |
      Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится
      Вряд ли это возможно....В нашем четвертьфинале внеконкурса играл Геннадий Короткевич, если бы можно было ее решить без прекалька то, он бы ее решил, а вместо этого он писал дикий ад...
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Задача G:
Вариантов много. Сам ответ: (2*m-k)/(4*m-k)
1) Можно написать тупой перебор и получить закономерность, в виде арифметических прогрессий в числителе и знаменателе.
2) Хотя товарищ по команде рассуждал так....Все условие эквивалентно следующему:
а) Дано 2*m шаров, половина синие, половина - красные.
б) В один раз мы вытаскиваем шар из 2*m шаров? во второй вытаскиваем из 2*m-k (что гарантируем нам то, что был шар с номером меньшим K и он был синим). т.е. второй раз тащили без K штук красных.
Дальше выписываем сколько выигрышных вариантов и сколько всего вариантов, сокращаем и получаем ответ...Но на контесте мы, увы, пошли по ложному пути...и учли не все состояния. как выигрышные. так и проигрыщные...