#include <iostream>
#include <vector>
#include <list>
#include <set>
#include <map>

using namespace std;

int main()
{
	vector<int> container;
    //list<int> container; // list도 가능.
    //set<int> container; // container.insert(i) 정도만 다름
    // map<int,char> container; // container.insert(make_pair(i,char(i+65)));
    // map일때는 itr가 가리키는 것이 tuple이기 때문에 itr->first, itr->second 로 접근 가능
    
    for (int i=0;i<10;++i)
        container.push_back(i);
    
    
    
    //vector<int>::iterator
    vector<int>::const_iterator itr;
    itr = container.begin();
    while (itr != container.end())
    {
        cout << *itr << " ";
        
        ++ itr;
    }
    cout << "\n";
    
 	for ( auto & e : container)
        cout << e << " ";
    cout << "\n";
    for (auto itr = container.begin(); itr != container.end(); ++itr)
    {
        cout << *itr << " ";
    }
    cout << "\n";
    
    
    
    return 0;
}