mickypinata

CUBE-T170: Cupid

Jul 30th, 2021
663
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. const int N = 1000;
  5.  
  6. int boys[N + 1], girls[N + 1];
  7.  
  8. int main(){
  9.  
  10.     int nCity, dist;
  11.     scanf("%d%d", &nCity, &dist);
  12.     for(int i = 1; i <= nCity; ++i){
  13.         scanf("%d%d", &boys[i], &girls[i]);
  14.     }
  15.     for(int i = 1; i <= nCity; ++i){
  16.         int upb = min(nCity, i + dist);
  17.         for(int j = max(1, i - dist); j <= upb; ++j){
  18.             if(boys[i] >= girls[j]){
  19.                 boys[i] -= girls[j];
  20.                 girls[j] = 0;
  21.             } else {
  22.                 girls[j] -= boys[i];
  23.                 boys[i] = 0;
  24.             }
  25.         }
  26.         if(boys[i] > 0){
  27.             cout << "NO";
  28.             return 0;
  29.         }
  30.     }
  31.     for(int i = 1; i <= nCity; ++i){
  32.         if(girls[i] > 0){
  33.             cout << "NO";
  34.             return 0;
  35.         }
  36.     }
  37.     cout << "YES";
  38.  
  39.     return 0;
  40. }
  41.  
RAW Paste Data