JABUKE

· · 题解

首先,我们需要想到船有长度,可以用两个变量存储船的左右两边。

然后,我们需要累加船移动的数值,在最后输出。

其次,我们要判断苹果距离船的距离,屏幕的列数可以不用去考虑。

最后,将船的下标进行改动。

代码如下:

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

int main()
{
    int l=1,r,n,m,a[25],sum=0,x;
    cin >> x >> m >> n;
    r=m;
    for(int i=1;i<=n;i++)
    {
        cin >> a[i];
        if(a[i]>r)
        {
            sum+=a[i]-r;
            r=a[i];
            l=r-m+1;
        }
        if(a[i]<l)
        {
            sum+=l-a[i];
            l=a[i];
            r=l+m-1;
        }
    }
    cout << sum << endl;
    return 0;
}