Advertisement
goshansmails

Untitled

Jul 7th, 2019
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.84 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdio>
  3. #include <vector>
  4. #include <map>
  5. #include <algorithm>
  6.  
  7. using namespace std;
  8.  
  9. int main() {
  10.     int n, m;
  11.     cin >> n >> m;
  12.    
  13.     vector<int> prices(n), custumers(m);
  14.     map<int, int> cnt;
  15.    
  16.     for (int i = 0; i < n; ++i) {
  17.         scanf("%d", &prices[i]);    
  18.         cnt[prices[i]]++;
  19.     }
  20.     for (int i = 0; i < m; ++i) {
  21.         scanf("%d", &custumers[i]);    
  22.     }
  23.    
  24.     vector<int> a;
  25.     for (auto x : cnt) {
  26.         a.push_back(x.first);
  27.     }
  28.    
  29.     for (int pc = 0; pc < m; ++pc) {
  30.         auto tmp = lower_bound(a.begin(), a.end(), custumers[pc]);
  31.        
  32.         while (tmp >= a.begin() && (cnt[*tmp] == 0 || *tmp > custumers[pc])) {
  33.             tmp--;
  34.         }
  35.        
  36.         if (tmp >= a.begin()) {
  37.             cout << *tmp << endl;
  38.             cnt[*tmp]--;
  39.         } else {
  40.             cout << -1 << endl;
  41.         }
  42.     }
  43.    
  44.     return 0;
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement