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

Автор Lakh, история, 6 лет назад, По-английски

I am trying to solve some approximation problems but not able to analyze how to design algorithm for such problems. Please provide some tips on solving such kind of problems. Also if you have solved such kind of problems please share them. Thanks!

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

»
6 лет назад, # |
  Проголосовать: нравится -8 Проголосовать: не нравится

Intuition, trial and error, proof by AC are all applicable for such problems. I'm assuming you really mean approximation and not things like binary search. This is the kind of problem you're almost never too sure if your solution is enough.

An example: https://mirror.codeforces.com/gym/100512 problem J. Given a DAG, output a vertex that can reach at least half of the vertices than the maximum. My solution is just taking random starting points and mark the vertices that can reach it. Now, assume the most frequent one is the answer. This has very good chance of passing and I'm not sure about the exact probability but it makes sense.