const attractions = [
{ name: '故宫', days: 1, rating: 7 },
{ name: '颐和园', days: 2, rating: 8 },
{ name: '长城', days: 3, rating: 9 },
{ name: '天坛', days: 1, rating: 6 }
];
function greedyOptimalAttractions(days) {
const sortedAttractions = attractions.sort((a, b) => b.rating - a.rating);
let remainingDays = days;
let selectedAttractions = [];
for (let i = 0; i < sortedAttractions.length; i++) {
const attraction = sortedAttractions[i];
if (attraction.days <= remainingDays) {
selectedAttractions.push(attraction.name);
remainingDays -= attraction.days;
}
}
return selectedAttractions;
}
const daysAvailable = 4;
const result = greedyOptimalAttractions(daysAvailable);
console.log(`为了获得最大价值,你应该选择:${result.join(' 和 ')}。`);