Submission #1360623

#TimeUsernameProblemLanguageResultExecution timeMemory
1360623almaarmudFountain (eJOI20_fountain)C++20
30 / 100
1594 ms2528 KiB
/*  █████╗ ██╗     ███╗   ███╗ █████╗  █████╗ ██████╗ ███╗   ███╗██╗   ██╗██████╗
   ██╔══██╗██║     ████╗ ████║██╔══██╗██╔══██╗██╔══██╗████╗ ████║██║   ██║██╔══██╗
   ███████║██║     ██╔████╔██║███████║███████║██████╔╝██╔████╔██║██║   ██║██║  ██║
   ██╔══██║██║     ██║╚██╔╝██║██╔══██║██╔══██║██╔══██╗██║╚██╔╝██║██║   ██║██║  ██║
   ██║  ██║███████╗██║ ╚═╝ ██║██║  ██║██║  ██║██║  ██║██║ ╚═╝ ██║╚██████╔╝██████╔╝
   ╚═╝  ╚═╝╚══════╝╚═╝     ╚═╝╚═╝  ╚═╝╚═╝  ╚═╝╚═╝  ╚═╝╚═╝     ╚═╝ ╚═════╝ ╚═════╝ 
*/
#include <bits/stdc++.h>
using namespace std;
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;
#define ll long long
#define ull unsigned long long
#define ld long double
#define str string
#define ch char
#define db double
#define pb push_back
#define ff first
#define ss second
#define all(x) (x).begin(),(x).end()
#define rall(x) (x).rbegin(),(x).rend()
#define YES cout<<"YES\n";
#define NO cout<<"NO\n";
#define Bob cout<<"Bob\n";
#define Alice cout<<"Alice\n";
#define ordered_set tree<ll, null_type, less<ll>, rb_tree_tag, tree_order_statistics_node_update>
const ll INF = 10000000000;
void solve(){
  ll n,q;
  cin>>n>>q;
  vector<pair<ll,ll>>v;
  for(int i = 0;i<n;i++){
    ll a,b;
    cin>>a>>b;
    v.pb({a,b});
  }
  while(q--){
    ll ah,ahh;
    cin>>ah>>ahh;
    ll su = ahh;
    ll diametr = v[ah-1].ff;
    su-=v[ah-1].ss;
    if(su<=0){
      cout<<ah<<"\n";
      continue;
    }
    ll j = ah;
    ll ahhh = -1;
    while(j<n){
      if(v[j].ff>diametr){
        su-=v[j].ss;
        diametr = v[j].ff;
        ahhh = j;
      }
      if(su<=0){
        break;
      }
      j++;
    }
    if(su>0){
      cout<<0<<"\n";
      continue;
    }
    else{
      cout<<ahhh+1<<"\n";
    }
  }
}
signed main(){
  ll t=1;
  //cin>>t;
  while(t--){
    solve();
  }
  return 0;
}
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...