It just means someone created 2 different address types with the same hash160 value. They are still valid addresses, and would be considered different (because of the different prefix, see below). I was amazed for a moment, but it looks like the 2 addresses have never spent any bitcoin :) It's almost certain the creator did not create this from a valid key pair.
If you take the hash160 value 0000000000000000000000000000000000000000 and append 00, the standard P2PKH address prefix, and then BASE58CHECK encode it, you get the first address 1111111111111111111114oLvT2.
Then, change that prefix to 05, the standard P2SH address prefix, you get the second address: 31h1vYVSYuKP6AhS86fbRdMw9XHieotbST.
$ printf "000000000000000000000000000000000000000000" | xxd -r -p | base58 -c
1111111111111111111114oLvT2
$ printf "050000000000000000000000000000000000000000" | xxd -r -p | base58 -c
31h1vYVSYuKP6AhS86fbRdMw9XHieotbST
Finding a pubkey which shares a hash160 with a valid script should be easy :
02****1D**********************************************************,03******1C********************************************************, and04********3B**********************************************************************************************************************. Replace**with any byte and there you have a valid pubkey which is also a valid script, although it is not a very interesting script :) – arubi – 2018-08-25T04:03:36.997