It is entirely possible to have multiple AD domains, from separate forests, sync to a single AAD instance, so long as you can uniquely identity all users. You can read about doing this here.
If you choose to sync all users to a single AAD Tenant then you can use a single O365 subscription. If you sync them to separate Tenants then you will need separate O365 subscriptions.