Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <algorithm>
- #include <vector>
- #include <set>
- #include <map>
- using namespace std;
- template<typename It>
- void PrintRange(It range_begin, It range_end)
- {
- for (auto it = range_begin; it != range_end; ++it)
- {
- cout << *it << " ";
- }
- }
- int main()
- {
- vector <string> langs = { "Python", "C++", "C", "Java", "C#" };
- auto it = partition(begin(langs), end(langs), [](const string& lang)
- { return lang[0] == 'C'; });
- PrintRange(begin(langs), end(langs));
- PrintRange(begin(langs), it);
- //////////////////////////////////////////////////////////////////////////////////////
- vector<string> c_langs(langs.size());
- auto it = copy_if(begin(langs), end(langs), begin(c_langs),
- [](const string& lang)
- { return lang[0] == 'C'; });
- PrintRange(begin(c_langs), it);
- //////////////////////////////////////////////////////////////////////////////////////
- set<int> a = { 1,8,3 };
- set<int> b = { 3,6,8 };
- vector<int> v(a.size());
- auto it2 = set_intersection(begin(a), end(a), begin(b), end(b), begin(v));
- PrintRange(begin(v), it2);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement