比赛 2024暑假C班集训9 评测结果 WWWWWTTTWT
题目名称 机场改建 最终得分 0
用户昵称 Untitled 运行时间 14.367 s
代码语言 C++ 内存使用 6.50 MiB
提交时间 2024-07-09 10:58:16
显示代码纯文本
#include <bits/stdc++.h>
using namespace std;

int t,n,d,a[200010];
long long res;

int main(){
    freopen("airport.in","r",stdin);
    freopen("airport.out","w",stdout);
    
    scanf("%d",&t);
    for (int x=1;x<=t;x++){
        scanf("%d %d",&n,&d);
        res=0;
        for (int i=1;i<=n;i++){
            scanf("%d",&a[i]);
            int minn=INT_MAX,u=0,len;
            bool f=0;
            if (i==1){
                printf("0 ");
                continue;
            }
            for (int j=1;j<i;j++){
                len=abs(a[i]-a[j]);
                if (d<=len){
                    f=1;
                    break;
                }
                if (d-len<minn){
                    minn=d-len;
                    u=j;
                }
            }
            if (!f){
                if (a[u]-a[i]>0) a[i]=a[u]-d;
                else a[i]=a[u]+d;
                res+=minn;
            }
            //for (int j=1;j<=i;j++) printf("%d ",a[j]);
            //printf("\n");
            printf("%d ",res);
        }
        printf("\n");
    }
    
    return 0;
}