void fib(int **arr, int count){
    *arr = malloc(sizeof(int) * count);
    if (count == 1){
        *arr[0] = 0;
        printf("*arr[0] %d", *arr[0]);
    }
    else {
        *arr[0] = 0;
        printf("*arr[0] %d", *arr[0]);
        *arr[1] = 1;
        printf("*arr[1] %d", *arr[1]);
        for (int i = 2; i < count; i++){
            *arr[i] = *arr[i-2] + *arr[i-1];
            printf("*arr[%d] %d", i, *arr[i]);
        }
    }
}

int main(int argc, char **argv) {
    /* do not change this main function */
    int count = strtol(argv[1], NULL, 10);
    int *fib_sequence;

    fib(&fib_sequence, count);
    for (int i = 0; i < count; i++) {
        printf("%d ", fib_sequence[i]);
    }
    free(fib_sequence);
    return 0;
}
