CF1833B Restore the Weather

//< -> <= #include<cstdio> #include<iostream> #include<algorithm> #include<queue> #include<ctime> #include<cmath> #include<bits/stdc++.h> #define ll long long #define ddd printf("------------------------------\n"); using namespace std; const int maxn=1e5+10 ; ll n,b[maxn],ans[maxn]; struct node{ ll id,val; }a[maxn]; bool cmp(node x,node y){ return x.val<y.val;//不可以<= } int main() { ios::sync_with_stdio(false); int T;cin>>T; while(T--) { memset(ans,0,sizeof(ans)); int n,k;cin>>n>>k; for(int i=1;i<=n;i++) cin>>a[i].val,a[i].id=i; for(int i=1;i<=n;i++) cin>>b[i]; sort(a+1,a+1+n,cmp); sort(b+1,b+1+n); for(int i=1;i<=n;i++) ans[a[i].id]=b[i]; for(int i=1;i<=n;i++) cout<<ans[i]<<" "; cout<<endl; } return 0; }