'Why the code show "Debug Assertion Failed!" message? [duplicate]

I trying to make a C++ code that delete occurrences of an element if it occurs more than "n" times, when I debug the code, apears a window with the message: "Debug Assertion Failed!"

Here is the code:

#include<iostream>
#include<vector>

std::vector <int> deleteNth(std::vector<int> arr, int n) {
    
    int asi = sizeof(arr) / sizeof(arr[0]);
    int cont = 0;
    int i;
    int j;
    int k;

    for (i = 0; i < asi; ++i)
        for (j = i + 1; j < asi;)
        {
            if (arr[i] == arr[j])
            {
                ++cont;
                if (cont == n) {

                    for (k = j; k < asi - 1; ++k)
                        arr[k] = arr[k + 1];
                    --asi;
                }

            }
            else
                ++j;
        }

    std::vector<int> newarr;
    newarr.resize(asi);

    return newarr;
}

int main() {
    int i;
    std::vector<int> arr_final = deleteNth({ 20,37,20,21 }, 1);
    int arrsize_ext = sizeof(arr_final ) / sizeof(arr_final[0]);
    
    for (i = 0; i < arrsize_ext; ++i)
        cout << arr_final[i] << " ";
}
c++


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source