Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <fstream>
- using namespace std;
- ifstream f("br.in");
- ofstream g("br.out");
- const int N=200000;
- int v[N],k[100000],x[100000];
- long long sum[N];
- int main()
- {
- int n,i,t,j,pas=1<<14,r;
- f>>n>>t;
- for(i=1;i<=n;++i)
- f>>v[i];
- for(i=n+1;i<=2*n;++i)
- v[i]=v[i-n];
- for(j=0;j<t;++j)
- f>>k[j]>>x[j];
- sum[1]=v[1];
- for(i=2;i<=2*n;++i)
- sum[i]=v[i]+sum[i-1];
- for(j=0;j<t;++j)
- {
- r=k[j]-1;
- pas=1<<14;
- while(pas!=0)
- {
- if(r+pas<=2*n&&sum[r+pas]<=x[j]+sum[k[j]-1])
- r+=pas;
- pas/=2;
- }
- r=r-k[j]+1;
- if(r>n)
- r=n;
- g<<r<<'\n';
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement