The man identified as Fransiskus Subihardayan, was rushed to hospital after being found conscious but very weak, and wearing only a black watch, in Lake Toba, into which the aircraft is believed to have plummeted, on western Sumatra island.
The survivor, in his 20s, was one of five people aboard the Eurocopter EC-130 when it disappeared on Sunday during a short flight from Samosir island, a popular tourist spot on the lake, to the city of Medan.
"The man was found by the navy at around 1.00pm (06.00 GMT)," Hisar Turnip, a search and rescue agency spokesman, told AFP. "He was not swimming, just floating.
He was found without clothes, stark naked. He told rescuers he was a passenger on the helicopter and gave some details, but he was slipping in and out of consciousness as he was taken to a local hospital, officials said. His current condition was not immediately clear. Search and rescue agency official Heronimus Guru said that Subihardayan told rescuers that all on board - himself, two other passengers, one pilot and one engineer - managed to jump from the helicopter as it went down.
"He said the five managed to jump off, and they managed to stay afloat by holding on to water hyacinths until 11.00pm but then they were separated," he said.
The rescue came after a helicopter seat cushion was found in the lake late on Monday. Search teams are still hunting for the wreckage of the missing aircraft and the other passengers and crew.
Lake Toba sits amid volcanos on vast, jungle-clad Sumatra island, and is popular with both foreign and domestic tourists. It is the world's biggest volcanic lake and was formed by a huge eruption tens of thousands of years ago. The disappearance of the helicopter was the latest blow to Indonesia's aviation sector following a spate of deadly crashes.