Earlier, three topless members of Ukrainian women's group Femen briefly interrupted his visit to a German trade fair with Chancellor Angela Merkel.

Mr Putin joked about the incident, saying he "liked this performance".

The female activists had bared their torsos, covered in anti-Putin slogans, and shouted "Putin dictator", while he was touring the business fair with Ms Merkel in the German city of Hanover on Thursday morning.

Femen have staged several protests around Europe against Russia's detention of feminist punk band Pussy Riot.

"We knew it was coming," Mr Putin quipped at a press conference with Mrs Merkel. "You should thank the Ukrainian girls for helping you promote the fair."

'Human rights-free zone'

After his short stay in Germany, the president then flew to Amsterdam where he faced further protests, this time from gay rights activists accusing Russia of discriminating against homosexuals.

Dutch activists accuse Russia of discriminating against gay rights

In particular, demonstrators were angry about a new Russian bill aimed at outlawing "gay propaganda".

If passed, it would mean that across Russia events promoting gay rights would be banned and the organisers fined.

Protesters booed and whistled at Mr Putin's arrival at the Hermitage Museum, while human rights group Amnesty International had put up fake police tape proclaiming the area a "human rights-free zone".

Meanwhile houses and bridges in Amsterdam's historic canal district were draped with banners and the rainbow flag of the gay movement.

But the Russian leader remained unfazed by the demonstrations.

"Thank god, the gays didn't strip naked here," he joked at a press conference in Amsterdam.

Mr Putin also deflected criticism over Russia's treatment of gay rights, saying: "They're people, just like everyone else, and they enjoy full rights and freedoms."