Advertisement
a53

cb2

a53
Mar 27th, 2018
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.59 KB | None | 0 0
  1. #include <iostream>
  2. #define N 100001
  3. using namespace std;
  4. int sume[N],M[N],x,s;
  5.  
  6. int cautbin(int st,int dr)
  7. {
  8. if(st>dr)
  9. return dr;
  10. int mij=(st+dr)/2;
  11. if(sume[mij]>s||M[mij]>x)
  12. cautbin(st,mij-1);
  13. else
  14. cautbin(mij+1,dr);
  15. }
  16.  
  17. int main()
  18. {
  19. int n;
  20. cin>>n;
  21. int a,MAX=0;
  22. for(int i=1;i<=n;++i)
  23. {
  24. cin>>a;
  25. sume[i]=sume[i-1]+a;
  26. if(a>MAX)
  27. M[i]=MAX=a;
  28. else
  29. M[i]=MAX;
  30. }
  31. int q;
  32. cin>>q;
  33. while(q--)
  34. cin>>x>>s,cout<<cautbin(0,n)<<'\n';
  35. return 0;
  36. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement