类似滑动窗口,将a[n]从左侧开始与b[m]进行n个数的比较并计算出difference,暂存于temp中,随后使用min函数选出最小的difference。

#include <bits/stdc++.h>
using namespace std;

int main(){
    int n;
    cin>>n;
    int a[n];
    for(int i=0;i<n;i++){
        cin>>a[i];
    }
    int m;
    cin>>m;
    int b[m];
    for(int i=0;i<m;i++){
        cin>>b[i];
    }
    int difference=INT_MAX;
    for(int i=0;i<m-n;i++){
         int temp=0;
        for(int j=0;j<n;j++){
            temp+=pow(a[j]-b[i+j],2);
        }
        difference=min(difference,temp);
    }
    cout<<difference;

    return 0;
}