Parameters behind # are for client use only. Request to the server never contains those parameters, server never sees them and can't react to them.
When you open urls
https://www.example.com/en/products/84/sample-product#/72-size-large
or
https://www.example.com/en/products/84/sample-product#/whatever
your server receive the very same request - https://www.example.com/en/products/84/sample-product
It does not know what combination you are requesting. Javascript will later parse the hash parameters, and will modify the product page to display the wanted combination if it's found. This also means that initial page render shows different combination, and only a few milliseconds later the page is 'adjusted'
When you provide ?combination=xxx parameter, server knows upfront what you want to display, and can returns page with combination already selected (if your theme supports this, of course). The page already contains correct pricing information, product name, reference code etc -- this is important for web crawlers.
This means that you need to provide urls with standard query parameters (after ?) to google