#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

struct printClass {
  int &count;
  
  printClass(int &n) { count  = n; }

  void operator()(int &i) const {
      count++;
      cout << i << "[" << count << "] ";
  }
};

int main(int argc, char** argv) {
    vector<int> a(5, 7);
    a[4] = -1;
    a.resize(10, 3);
    int state = 0;
    for_each(a.rbegin(), a.rend(), printClass(state));
}