1. i have 2 branch factory with same domain name, it is correct if i just buy 1 technician license for 20 pc (basic license) connected? and i can use that license in other pc?
Yes, you can use even 1-tech license on a few Viewers, since any license is not restricted to one workstation, i.e. you can register multiple computers with the same license and use any Viewer - one at a time. For more information please see this page.
2. if i just have Host license? can i remote that host without viewer license?
Do you mean the Endpoint license? If this is the case, then please note that the Endpoint license depends on the amount of Hosts (minimum purchase for the Endpoint license is 10 Hosts). In this case, the license is still added on the Viewer's side, but you can run remote sessions from unlimited number of Viewers at the same time. For more information please see this License comparison page.
3. what you suggest, i have team and has their own user id windows, how can i separate every user whos login to the right windows login
In this case you can set up Windows Security so that you can use a user's respective Windows accounts to authenticate on a remote Host. Here's a guide on how to set up Windows Security.