Intermediate C++ Game Programming Tutorial 16
In the video we take a look at a couple of bangers from
<algorithm>, and we learn what lambda functions are and how to use them.
- Concepts (as in, type concepts like Comparable)
<functional>functors as predicates
- Lambda functions
In the video Chili states that std::remove does not preserve the relative order of elements in the container, but this is fake news! Relative order is preserved: 
Video Timestamp Index
Solve the problems in Source.cpp attached below using the <algorithm> library and other parts of the standard library as extensively as possible. As a bonus problem, implement the sprite drawing effect shown at the end of the video using a lambda function.
For an in-depth look into the <algorithm> library and beyond, check out STD Gems.