本题用暴力枚举,每次将b数组(第二段音频)里的m段(m为第一段音频的长度)与第一段音频比较,将最小的difference找出来即可。

int main()
{
    int m,n,k;
    int a[1010],b[1010];
    int min=1e9,dif;
    scanf("%d",&m);
    for(int i=0;i<m;++i)
    {
        scanf("%d",&a[i]);
    }
    scanf("%d",&n);
    for(int i=0;i<n;++i)
    {
        scanf("%d",&b[i]);
    }
    for(int i=0;i<n-m+1;++i)
    {
        k=0;
        dif=0;
        for(int j=i;j<=i+m-1;++j)
        {
            if(b[j]!=a[k])
                dif+=(b[j]-a[k])*(b[j]-a[k]);
                k++;
        }
        if(dif<min)
            min=dif;
    }
    printf("%d",min);
    return 0;
}
/*
4
5 6 3 4
9
3 4 5 6 3 3 3 3 5
*/

下面是我的自测用例