Cod sursa(job #3256121)

Utilizator Costy2345Costi Dimian Costy2345 Data 13 noiembrie 2024 16:02:24
Problema Transport Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <bits/stdc++.h>

using namespace std;
ifstream fin("transport.in");
ofstream fout("transport.out");
const int NMAX=16*1e3+2;
int v[NMAX];
int n,k;
int main()
{
    fin>>n;
    fin>>k;
    int minim,capmax=0,capmin=INT_MAX;

    for(int i=1;i<=n;i++){
        fin>>v[i];
        capmax+=v[i];
        capmin=max(capmin,v[i]);
    }
    int st=capmin,dr=capmax,mij;
    while(true){
        int nr=1,s=0;true;
        mij=(st+dr)/2;
        for(int i=1;i<=n;i++){
            s+=v[i];
            if(s>mij){
                nr++;
                s=0;
            }
        }
        if(nr>k){
            fout<<minim;
            break;
        }
        minim=min(minim,mij);
    }
    return 0;
}