#include <iostream>
#include <algorithm>
using namespace std;
string convert_each_word_first_letter_to_uppercase(string s) {
for_each(s.begin(), s.end(), [](char & ch) {
static int previous_ch = ' ';
if (previous_ch == ' ' && ch != ' ' && ::isalpha(ch)) {
ch = toupper(ch);
}
previous_ch = ch;
});
return s;
}
int main() {
string s = "cpp java php python";
s = convert_each_word_first_letter_to_uppercase(s);
cout << s;
}
/*
run:
Cpp Java Php Python
*/