The formula is very simple: 1 thread (virtual user) - 1 account
Given you properly configure JMeter to behave like a real browser each virtual user must exactly represent real user with all its stuff like cookies, headers, cache, think times, etc.
If after iteration is done you want the user to look like "new" and not "returning" - untick the relevant box in the Thread Group: