You are viewing a single comment's thread. Return to all comments →
#include
using namespace std;
class HotelRoom { public: HotelRoom(int bedrooms, int bathrooms) : bedrooms_(bedrooms), bathrooms_(bathrooms) {}
virtual int get_price() { return 50*bedrooms_ + 100*bathrooms_; }
private: int bedrooms_; int bathrooms_; };
class HotelApartment : public HotelRoom { public: HotelApartment(int bedrooms, int bathrooms) : HotelRoom(bedrooms, bathrooms) {}
int get_price() { return HotelRoom::get_price() + 100; }
};
int main() { HotelRoom* hotel_room; HotelApartment* hotel_apartment; hotel_room = hotel_apartment;
int n; cin >> n; vector<HotelRoom*> rooms; for (int i = 0; i < n; ++i) { string room_type; int bedrooms; int bathrooms; cin >> room_type >> bedrooms >> bathrooms; if (room_type == "standard") { rooms.push_back(new HotelRoom(bedrooms, bathrooms)); } else if (room_type == "apartment") { rooms.push_back(new HotelApartment(bedrooms, bathrooms)); } } int total_profit = 0; for (auto room : rooms) { total_profit += room->get_price(); } cout << total_profit << endl; for (auto room : rooms) { delete room; } rooms.clear(); return 0;
}
Seems like cookies are disabled on this browser, please enable them to open this website
Hotel Prices
You are viewing a single comment's thread. Return to all comments →
#include
include
using namespace std;
class HotelRoom { public: HotelRoom(int bedrooms, int bathrooms) : bedrooms_(bedrooms), bathrooms_(bathrooms) {}
private: int bedrooms_; int bathrooms_; };
class HotelApartment : public HotelRoom { public: HotelApartment(int bedrooms, int bathrooms) : HotelRoom(bedrooms, bathrooms) {}
};
int main() { HotelRoom* hotel_room; HotelApartment* hotel_apartment; hotel_room = hotel_apartment;
}