#include <bits/stdc++.h>
using namespace std;
int quadri(int N, long long M, int* V){
    int start = 0;
    int end = N;
    int mid = 0;
    int lastmid = 0;
    
    if (N == 1) return V[0]<=M;
    while (start<end){
        mid = (end+start)/2;
        int max_somma = 0;
        
        
        for (int i=0; i<mid; i++){
            max_somma += V[i];
        }
        for (int i =1; i<N-mid+1;i++){
            cerr<<max_somma<<endl;
            int temp_somma = max_somma;
            max_somma = max_somma - V[i-1] + V[i+mid-1];
            max_somma = max(max_somma, temp_somma);
            
        }
        cerr<<max_somma<<endl;
        
        // cerr<<start<<" "<<mid<<" "<<end<<endl;
        
        if (max_somma>M){
            if (start == 0 && end == 1){
                
                mid = start;
            }
            end = mid;
        }
        if (max_somma<M){
            if (start == N-1 && end == N){
                
                mid = end;
            }
            start = mid;
            
        }
        if (max_somma == M) return mid;
        // cerr<<laststart <<" "<<lastmid <<" "<<lastend<<endl;
        if (mid == lastmid) break;
        lastmid = mid;
        
        
    }
    
    return mid;
}