* Option 1: Take a ferry from Singapore to Batam Island, Indonesia. From Batam Island, take another ferry to Sekupang, Indonesia. From Sekupang, take a bus to Shenzhen, China. From Shenzhen, take a train to Hong Kong.
* Option 2: Take a ferry from Singapore to Bintan Island, Indonesia. From Bintan Island, take another ferry to Tanjung Pinang, Indonesia. From Tanjung Pinang, take a ferry to Johor Bahru, Malaysia. From Johor Bahru, take a bus to Kuala Lumpur, Malaysia. From Kuala Lumpur, take a train to Hong Kong.
* Option 3: Take a ferry from Singapore to Tanjung Priok, Indonesia. From Tanjung Priok, take a train to Jakarta, Indonesia. From Jakarta, take a flight to Hong Kong.
The total travel time for each of these routes will vary depending on the ferry and train schedules, as well as the time it takes to clear immigration and customs at each border crossing.