#include <iostream>
#include <vector>
#include <list>
#include <deque>
using namespace std;
template <class T>
struct inCount{
enum {result = 0};
};
template<class T,template <class TT,class alloc = allocator<TT> > class CON>
struct inCount<CON<T> > {
enum {result = inCount<T>::result +1};
};
template <class T>
int foo(T const & t) {
return inCount<T>::result;
}
int main() {
// your code goes here
vector< vector< list<vector <list<deque<int> > > > > > v;
cout << foo(v);
return 0;
}
#include <vector>
#include <list>
#include <deque>
using namespace std;
template <class T>
struct inCount{
enum {result = 0};
};
template<class T,template <class TT,class alloc = allocator<TT> > class CON>
struct inCount<CON<T> > {
enum {result = inCount<T>::result +1};
};
template <class T>
int foo(T const & t) {
return inCount<T>::result;
}
int main() {
// your code goes here
vector< vector< list<vector <list<deque<int> > > > > > v;
cout << foo(v);
return 0;
}