Mega Code Archive

 
Categories / C++ / Algorithm
 

Use generic adjacent_find algorithm with a predicate to find the first name that is lexicographically greater than the next one.

#include <iostream> #include <string> #include <algorithm> #include <cassert> #include <functional> #include <deque> using namespace std; int main() {   deque<string> player(5);   deque<string>::iterator i;   player[0] = "PPPP";   player[1] = "AAAAAA";   player[2] = "AAAAAA";   player[3] = "NNNNNNNN";   player[4] = "RRRRRRRRR";      i = adjacent_find(player.begin(), player.end(), greater<string>());   cout << *i << endl;   return 0; } /*  PPPP  */