Cod sursa(job #2794430)

Utilizator RohantayronEric Stanciu Matei Rohantayron Data 4 noiembrie 2021 20:57:52
Problema Grupuri Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <fstream>
#include <algorithm>
using namespace std;

int v[100001];
long long sp[100001];
int main()
{
    ifstream cin("grupuri.in");
    ofstream cout("grupuri.out");
    int k,n,i,p,u,med,poz;
    long long st,dr,mij,sol;
    cin>>k>>n;
    for(i=1;i<=n;i++){
        cin>>v[i];
        sp[i]=sp[i-1]+v[i];
    }
    st=1;
    dr=1000000000000;
    while(st<=dr){
        mij=(st+dr)/2;
        p=1;
        u=n;
        while(p<=u){
            med=(p+u)/2;
            if(v[med]<k){
                p=med+1;
            }
            else{
                poz=med;
                u=med-1;
            }
        }
        if(sp[poz-1]<mij)
            dr=mij-1;
        else{
            sol=mij;
            st=mij+1;
        }
    }
    cout<<sol;
    return 0;
}