I have a question. Each address theoritically can be generated by how many different private key ?
Since h160 is less than the private key hex
Number of private keys: ~2**256
Number of SHA256 hashes: 2**256
Number of H160 hashes: 2**160
Naive answer: on average around 2**96 private keys for every address (one key in every other 2**160 tries, on average).
Better answer: since SHA256 is uniform, only around 63.4% of all possible SHA hashes will come up after 2**256 hash operations (any given hash has only a 63.4% probability to show up at least once or more). 36% of all possible SHAs won't make it. 28% will show up at least twice, etc.
So, around 0.63 * 2**256 unique SHA hashes go into RIPEMD-160.
Since RIPEMD-160 is also uniform, but the number of hash ops is much larger than 2**160, almost every possible H160 hash is likely to be seen at least once (but the average goes down a tiny little bit from the naive 2**96).
So, final answer: an address may be generated by no private key at all, or by a ton more of private keys than is expected, but the sweet spot of 99.9999% confidence is some small interval around the <2**96 average.
If you plan to find an address collision (this is what your idea sounds like, right?) best of luck. You'll likely need much more than 2**160 hashing ops before you can reach some 99.999% chances to get a collision. That's equivalent to solving Puzzle 71 several billion septillion times, instead of just once. If you take a billion RTX 4090 and start today, it would still take 10**21 years before you get a collision. That's 500 billion times more time than the age of our Universe.
I think you forgot that each private key can generate 2 addresses (compressed and uncompressed in legacy version), so I believe that you have to take this fact into account as well.