题目描述

已知元素从小到大排列的两个数组f[]和g[],请写出一个程序算出两个数组彼此之间差的绝对值中最小的一个,这叫做数组的距离

输入

第一行为两个整数m, n(1≤m, n≤1000),分别代表数组f[], g[]的长度。
第二行有m个元素,为数组f[]。
第三行有n个元素,为数组g[]。

输出

数组的最短距离

#include<bits/stdc++.h>
using namespace std;
int abs(int s);          
int main()
{
    int a[10000],b[10000],c,d,i,n,min=99999,t;
    cin>>c>>d;
    for(i=0;i<c;i++)
    {
        cin>>a[i];
    }
    for(n=0;n<d;n++)
    {
        cin>>b[n];
    }
    for(i=0;i<c;i++)
    {
        for(n=0;n<d;n++)
        {
            t=abs(a[i]-b[n]);
            if(t<min)
                {
                    min=t;
                }
        }
    }
    cout<<min;
    return 0;
}
int abs(int s)
{
    if(s<0)
    return -s;
    else
    return s;
}