Cod sursa(job #3001858)

Utilizator rapatudorRapa Balan Tudor Florin rapatudor Data 13 martie 2023 23:08:04
Problema Transport Scor 40
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream fin("transport.in");
ofstream fout("transport.out");

int main()
{
    int N, K, s = 0, d = 0, mid, w = 0, l = 0, it = 0;
    fin>>N>>K;
    int a[N];
    for(int i = 0; i<N; i++){
        fin>>a[i];
        d+=a[i];
        if(a[i]>s){
            s = a[i];
        }
    }
    while(s<d){
        mid = (d+s)/2;
        it = 0;
        l = 0;
        for(int i = 0; i<N; i++){
            l+=a[i];
            if(l+a[i+1]>mid){
                it++;
                l = 0;
            }
        }
        cout<<it<<" "<<K<<endl;
        if(it<=K){
            d = mid-1;
            cout<<d<<endl;
        } else {
            s = mid+1;
        }
    }
    fout<<s;
    return 0;
}