#include<bits/stdc++.h>
using namespace std;
long long a[100010];
long long m,n;
bool pd(long long x){
long long sum=0,d=1;
for(long long i=1;i<=n;i++){
sum+=a[i];
if(sum>x){
sum=a[i];
d++;
}
}
if(d<=m)return true;
else return false;
}
int main(){
long long sum=0;
scanf("%lld%lld",&n,&m);
for(long long i=1;i<=n;i++){
scanf("%lld",&a[i]);
sum+=a[i];
}
long long r=sum+1,l=0;
long long mid=(r+l)/2;
while(l+1<r){
mid=(r+l)/2;
if(pd(mid))r=mid;
if(!pd(mid))l=mid;
}
printf("%lld",r);
return 0;
}
第四个点错了