提交时间:2026-05-30 13:55:06
运行 ID: 41842
#include<bits/stdc++.h> using namespace std; int a[200005],b[200005],c[200005],d[200005]; int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int t; cin>>t; while(t--) { int n,m; cin>>n>>m; for(int i=1;i<=n;i++) cin>>a[i]; for(int i=1;i<=n/2;i++) b[i]=(a[i]-a[n-i+1]+m)%m; for(int i=1;i<=n/2;i++) c[i]=(b[i]-b[i-1]+m)%m; int ans1=0,ans2=0; for(int i=1;i<=n/2;i++) { ans1+=m-c[i]; d[i]=m-c[i]; } sort(d+1,d+1+n/2); int cnt1=ans1/m; for(int i=n/2;i>=n/2-cnt1+1;i--) { ans1-=d[i]; } for(int i=1;i<=n/2;i++) { ans2+=c[i]; d[i]=c[i]; } int cnt2=ans2/m; sort(d+1,d+1+n/2); for(int i=n/2;i>=n/2-cnt2+1;i--) ans2-=d[i]; cout<<min(ans1,ans2)<<endl; } return 0; }