Untitled
unknown
plain_text
a year ago
936 B
5
Indexable
#define ll long long #define pb push_back #include <bits/stdc++.h> using namespace std; bool cmp(pair<ll,ll>&a,pair<ll,ll>&b){ return a.second<b.second; } void solve(){ ll n,k; cin>>n>>k; vector<ll>a(n),b(n); vector<pair<ll,ll>>food; for(int i=0;i<n;i++) cin>>a[i]; for(int i=0;i<n;i++) cin>>b[i]; for(int i=0;i<n;i++){ food.pb({a[i],b[i]}); //type,time } ll cat=1; sort(a.begin(),a.end()); for(int i=1;i<n;i++){ if(a[i]!=a[i-1]) cat++; } sort(food.begin(),food.end(),cmp); if(k>cat) { cout<<-1<<"\n"; return;} ll t=0; ll prev=-1; set<int>s; for(int i=0;i<n;i++) if(s.find(food[i].first)==s.end()) { t+=food[i].second; s.insert(food[i].first); if(s.size()==k) break; } cout<<t<<"\n"; } signed main() { ios_base::sync_with_stdio(0); cin.tie(0);cout.tie(0); int t; cin>>t; while(t--) solve(); }
Editor is loading...
Leave a Comment