rendered paste body#include <stdio.h>#include <windows.h>int main(int argc, char *argv[]){ LARGE_INTEGER begin; LARGE_INTEGER end; int i, j; const int N = 1<<14; int** data; data = (int*)malloc(sizeof(int) * N); for (i = 0; i < N; i++) { data[i] = (int*)malloc(sizeof(int) * N); for (j = 0; j < N; j++) data[i][j] = 1; } i = 0; j = 0; // Optimized QueryPerformanceCounter(&begin); for (i = 1; i < N; i++) { for (j = 1; j < N; j++) { data[i][j] = data[i-1][j-1]; } } QueryPerformanceCounter(&end); printf("Diff: %ld\n", end.QuadPart - begin.QuadPart); // Not optimized QueryPerformanceCounter(&begin); for (j = N; j > 0; j--) { for (i = 0; i > 0; i--) { data[i][j] = data[i-1][j-1]; } } QueryPerformanceCounter(&end); printf("Diff: %ld\n", end.QuadPart - begin.QuadPart); getch();}