"Логические задачи" - это познавательно-развлекательный проект для непрокисших мозгов.
Задачи на логику, нестандартное мышление. Не всегда самое очевидное решение - правильное.
Но иногда всё оказывается проще, чем кажется на первый взгляд.
Легко показать, что выражение для a - гипербола, т.е. монотонная функция. Увеличивая b от 1, a будет монотонно уменьшаться. Чтобы a оставалось натуральным необходимо, чтобы выполнялось неравенство a >= 1.
Решая неравенство
(b+500)/(2*b-1) меньше 1, получим, что b не более 501. Далее программка из пяти строчек (цикл по b от 1 до 501), чтобы найти целые значения a.