How to assign a record dynamically?

I have a usecase where a record should be assigned to the user based on the location field , where user profile would have locations assigned to them .

In assignment rule when i choose round robin or load balancing, I have to select the users to whom it should get assigned. I have 100 + unique locations should i create 100+ assignement rules for the same doc type ?

I think, yes, you have to create multiple assignement rules for that.

Will this approach work where if a user creates a record can i update a field in record with the user email that needs to be assigned based on the location field in the record so that one assignment rule can suffice my usecase ?

I don’t think but try it.