Мой подход немного отличается от этой проблемы. Для меня действительно не имеет значения, какой метод вы выберете. причина в том, что «улучшение производительности», которое вы получите в лучшем оптимизированном методе, будет ~ 50 мс для 250000 итераций !! (согласно сообщению @ David). И, очевидно, это улучшение - не то, на что вы хотели бы тратить свое драгоценное время на поиск оптимизированного решения.
(Но, тем не менее, согласно первоначальному вопросу ОП, я также хотел бы предложить последний подход.)
Я знаю, что ответ немного странный и необычный, но это реальность.