c++没法过编译的问题


#include <iostream>
#include <vector>
using namespace std;
const int N = 1e5+10;
vector<int> a[N];
//双指针 自增(j标记最后一个合法序列的位置)
int remove_duplicate(vector<int> &nums)
{
    int j = 0,n = nums.size();
    for (int i = 0;i<n;i++)
    {
        if ( nums[i]!= nums[j])
        {
            nums[++j] = nums[i];
        }
    }
    return j+1;//j是下标,长度+1;
}

int main()
{
    int n;
    cin >> n;
    for (int i = 0;i<n;i++) cin >> a[i];
    int ans = remove_duplicate(a);
    cout<<ans;
    return 0;
    //返回最终答案的长度即可
}

不是算法有疑惑,是对编译报错不理解,为啥会报错,要怎么改嘞?

可以了,你变量没定义

img