#include<bits/stdc++.h>
using namespace std;
int x[100001];
int l;
long long le,ri,mid,a1,k,q;
bool f=0;
bool check(long long,int);
int main(){
cin>>l>>k;
for(int i=1;i<=l;i++){
cin>>x[i];
}
le=0;
ri=1e15;
while(le<ri){
mid=(le+ri)>>1;
if(check(mid,1)){
if(mid!=0)f=1;
le=mid+1;
}else{
ri=mid;
}
if(ri==1&&le==0&&q==k){
le=1;
}
}
a1=le;
le=0;
ri=1e15;
while(le<ri){
mid=(le+ri+1)>>1;
if(check(mid,2)){
if(mid!=0)f=1;
le=mid;
}else{
ri=mid-1;
}
}
if(f){
cout<<a1<<" "<<le;
}else{
cout<<-1;
}
return 0;
}
bool check(long long a,int flag){
long long c=0;
q=0;
for(int i=1;i<=l;i++){
c+=x[i];
if(c<0){
c=0;
}
if(c>=a){
c=0;
q++;
}
}
if(q==k){
f=1;
}
if(flag==1)return (q>k);
if(flag==2)return (q>=k);
}