Cod sursa(job #1854158)

Utilizator mihai2003LLL LLL mihai2003 Data 22 ianuarie 2017 14:15:01
Problema Secv Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.99 kb
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
vector<int>v;
int main()
{
    int aux,s,n;
   // freopen("a.in","r",stdin);
   // freopen("a.out","w",stdout);
    while(cin>>n>>s){
        int i,suma,u,p,miny;
        suma=0;
        v.clear();
        u=0;
        miny=n+1;
        for(int i=1;i<=n;i++)
            cin>>aux,v.push_back(aux);
        suma=v[0];
        //cout<<v[0]<<" ";
        for(int i=1;i<n;i++){
           // cout<<v[i]<<" ";
            suma+=v[i];
            if(suma>=s){
                while(suma>=s && u<=i){
                    if(suma>=s)
                        if(miny>i-u){
                            miny=i-u;
                            //cout<<u<<" "<<i<<" "<<suma<<endl;
                        }
                    suma-=v[u];
                    u++;
                }
            }
        }
        if(miny>n)
            cout<<0<<'\n';
        else
            cout<<miny+1<<'\n';
    }
    return 0;
}