Absolutely not. It's happened several times that I started writing an answer to an unanswered question, which took time since I was writing high-quality answers. While I was writing, others had time to answer before me and sometimes even got upvotes. But I just continued writing my answer, and when I posted it, it got more upvotes than the others and sometimes even got accepted. HereHere is a concrete example.
Also, if you have a good answer to an old question, don't hesitate to post it. This answerThis answer is my highest upvoted non-meta post on the whole Stack Exchange network, and it was posted 6 years after the question was asked. It's even the answer to that question with the most upvotes, it even outscored the acceped answer. Of course, it took time to collect all those upvotes, but in the long term I earned a whole lot of reputation from it. And I still see from time to time a +10 in my profile page because someone upvoted it.