Cod sursa(job #2074350)

Utilizator verde.cristian2005Verde Flaviu-Cristian verde.cristian2005 Data 24 noiembrie 2017 15:19:15
Problema Transport Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <fstream>
using namespace std;
ifstream in("bere.in");
ofstream out("bere.out");
int v[40000];
int main()
{
    int n,k,i,a,b,r,pas;
    in>>n>>k;
    for(i=1; i<=n; i++)
    {
        in>>v[i];
        v[n+i]=v[i];
    }
    for(i=1; i<=2*n; i++)
        v[i]+=v[i-1];
    for(i=1; i<=k; i++)
    {
        in>>a>>b;
        r=a-1;
        pas=1<<14;
        while(pas)
        {
            if(r+pas<=n+a-1&&v[r+pas]-v[a-1]<=b)
                r+=pas;
            pas/=2;
        }
        out<<r-a+1<<'\n';
    }
    return 0;
}