#include #define int long long using namespace std; #define fi first #define sc second #define pii pair #define pdd pair #define pb push_back #define umap unordered_map #define mset multiset #define pq priority_queue #define ull unsigned long long #define i128 __int128 #define ld long double #define fixs fixed<>n>>k,tr.init(n),trs.init(n),res=1e18; for(int i=1;i<=n;i++) cin>>a[i],num[i]=a[i]; sort(num+1,num+n+1),cnt=unique(num+1,num+n+1)-num-1; for(int i=1;i<=n;i++) w[i]=lower_bound(num+1,num+cnt+1,a[i])-num,t[w[i]]=a[i]; for(int i=1;i>1,(tr.query(mid)>=k/2+(k&1)?p=mid,r=mid-1:l=mid+1); int x=t[p]*tr.query(p)-trs.query(p),y=(trs.query(n)-trs.query(p))-t[p]*(tr.query(n)-tr.query(p)); res=min(res,x+y),tr.upd(w[i-k+1],-1),trs.upd(w[i-k+1],-a[i-k+1]); } cout<>t; while(t--) solve(); return 0; } /* Samples input: output: THINGS TODO: 检查freopen,尤其是后缀名 检查空间 检查调试语句是否全部注释 */