Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <map>
- #include <string>
- #include <vector>
- #include <iostream>
- #include <algorithm>
- using namespace std;
- int CountAndAddNewDogs_1(const vector<string>& new_dogs, const map<string, int>& max_amount,
- map<string, int>& shelter) {
- return count_if(max_amount.begin(), max_amount.end(), [&shelter, &new_dogs, &max_amount](const auto& [k, v]) {
- return k == "pekingese"s; // рассчитывал, что должно вернуться true на моменте {"pekingese"s, 4}, и count_if засчитает 1, а функция вернет 1
- });
- }
- int CountAndAddNewDogs_2(const vector<string>& new_dogs, const map<string, int>& max_amount,
- map<string, int>& shelter) {
- return count_if(max_amount.begin(), max_amount.end(), [&shelter, &new_dogs, &max_amount](const auto& dog) {
- return max_amount[dog] >= 4; // рассчитывал, что должно вернуться true на моменте {"pekingese"s, 4} и {"pointer"s, 7}, и count_if засчитает 1 и 1, а функция вернет 2
- });
- }
- int CountAndAddNewDogs_3(const vector<string>& new_dogs, const map<string, int>& max_amount,
- map<string, int>& shelter) {
- return count_if(max_amount.begin(), max_amount.end(), [&shelter, &new_dogs, &max_amount](const auto& dog) {
- return dog == "pekingese"s; // рассчитывал, что должно вернуться true на моменте {"pekingese"s, 4}, и count_if засчитает 1, а функция вернет 1
- });
- }
- int main() {
- map<string, int> shelter = {{"landseer"s, 1}, {"otterhound"s, 2}, {"pekingese"s, 2}, {"pointer"s, 3}};
- const map<string, int> max_amount = {{"landseer"s, 2}, {"otterhound"s, 3}, {"pekingese"s, 4}, {"pointer"s, 7}};
- const vector<string> new_dogs = {"landseer"s, "otterhound"s, "otterhound"s, "otterhound"s, "pointer"s};
- cout << CountAndAddNewDogs_1,2,3(new_dogs, max_amount, shelter) << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement