Britons looking for long-haul beaches this winter will find the best bargains in Bali followed by Cape Town and Sri Lanka, according to a new survey.

A basket of 10 items including an evening meal for two will cost the equivalent of just £40 in Bali this winter, the survey of long-haul destinations showed.

The items, which include a bottle of beer and a glass of wine, cost £47 in Cape Town where the South African rand has weakened against sterling, and just under £50 in Sri Lankan resorts.

In contrast, the 10 items cost as much as £161 in Dubai - the most expensive of the 34 destinations surveyed and where prices have rocketed 64 per cent since last year.

Also on the expensive side was Singapore (£155 for the items), Auckland in New Zealand (£133) and Muscat in Oman at £126.

While a three-course meal for two with a bottle of wine was just £27 in Bali, it would set a couple back nearly £114 in Singapore and just under £100 in Dubai.

The Post Office Travel Money survey, in conjunction with holiday company Travelbag, showed that in the last 12 months the long-haul destinations where the local currency has fallen most against sterling were Gambia, South Africa, Jamaica and Japan.