Недавно изучил бинарный поиск и научился применять его в тривиальных задачах, но решил отработать на практике бинпоиск по ответу. В поиске по тегам на сайте выбрал "бинарный поиск", открываю первую попавшуюся задачу: задача1 и просто не понимаю, под каким градусом нужно развернуться, чтобы применить тут бинпоиск. Настоящее решение задачи это в худшем случае O(N), где N — длина наименьшей строки. Бинпоиском это решение можно разве что усложнить и запутать. Решение в этом случае буквально выглядит так: ~~~~~ int l = .., r = ... while (l < r) { ...Нормальное решение, которое было без бинпоиска... }
~~~~~
Хорошо допустим просто одна такая задача попалась. Но я открываю следующую задачу: задача2 История повторяется. Могу привести ещё десятки подобных задач, в которых бинпоиск это не просто один из ответов, а цикл while, наложенный на другой ответ.
Конечно, мы ведь можем решить это именно так, согласен. Но если так рассуждать, то A + B тоже можно решить этим алгоритмом. Хороший набор задач, где без двоичного поиска на самом деле приходится туго, есть на сайте informatics, но задач там крайне мало и хотелось бы найти такого рода задачи на этом сайте, при этом не тратя лишнее время на осознание, что бинпоиском решать эту задачу это как из пушки стрелять по воробьям.
Теги видимо ставят ±рандомно, чтобы не выдать идею решения.
Мне вот эта например понравилась: https://codeforces.net/contest/1486/problem/D