40分求条
查看原帖
40分求条
1037554
hetao5422877楼主2025/6/19 21:39

解决必关!!!

#include<bits/stdc++.h>
using namespace std;
int n,m,k,s,t,ans,a[2001],f[2001][2001];
int main()
{
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        cin>>a[i];
    }
    for(int j=1;j<=2000;j++)
    {
        f[1][j]=abs(a[1]-j);
    }
    for(int i=2;i<=n;i++)
    {
        int mi=0x3f3f3f3f;
        for(int j=1;j<=2000;j++)
        {
            mi=min(mi,f[i-1][j]);
            f[i][j]=mi+abs(a[i]-j);
        }
    }
    ans=0x3f3f3f3f;
    for(int j=1;j<=2000;j++)
    {
        ans=min(ans,f[n][j]);
    }
    cout<<ans;
    return 0;
}
2025/6/19 21:39
加载中...