#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
vector<int> makeChange(vector<int> &coins, int amount) {
sort(coins.rbegin(), coins.rend());
vector<int> change;
for (int coin : coins) {
while (amount >= coin) {
change.push_back(coin);
amount -= coin;
}
}
if (amount == 0) {
return change;
} else {
return {};
}
}
int main() {
vector<int> coins = {25, 10, 5, 1};
int amount = 63;
vector<int> change = makeChange(coins, amount);
if (!change.empty()) {
cout << "Change for " << amount << " cents: ";
for (int coin : change) {
cout << coin << " ";
}
cout << endl;
} else {
cout << "Cannot make change for " << amount << " cents." << endl;
}
return 0;
}