#include <iostream>
#include <stack>
#include <ctime>
#include <vector>

std::stack<clock_t> tictoc_stack;

void tic() {
    tictoc_stack.push(clock());
}

void toc() {
    std::cout << "Time elapsed: "
    << ((double)(clock() - tictoc_stack.top())) / CLOCKS_PER_SEC
    << std::endl;
    tictoc_stack.pop();
}

using namespace std;

int main() {
    
    int sizes[] = {5, 10, 20, 30, 40, 50, 100, 200, 300, 400, 500, 1000};
    
    for (int k = 0; k < 12; ++k) {
        
        int SIZE = sizes[k];
        
        cout << "SIZE " << SIZE << endl;
        
        vector<vector<int> > v(SIZE, std::vector<int>(SIZE));
        
        tic();
        
        for (int t = 0; t < 1000; ++t) {
            
            for (int i = 0; i < SIZE; ++i) {
                for (int j = 0; j < SIZE; ++j) {
                    v[i][j] = v[i][j] + 5;
                }
            }
            
        }
        
        toc();

        vector<vector<int> > v3(SIZE, std::vector<int>(SIZE));

        
        tic();
        
        for (int t = 0; t < 1000; ++t) {
            
            for (int i = 0; i < SIZE; ++i) {
                for (int j = 0; j < SIZE; ++j) {
                    v3[j][i] = v3[j][i] + 5;
                }
            }
            
        }
        
        toc();        
        

        
    }
}