#include<bits/stdc++.h>
using namespace std;
int m,k;
int b[509];
vector<pair<int,int> > a;
bool pd(int num)
{
int s=0,p=k;
for(int i=m;i>=1;i--)
{
if(b[i]>num)return 0;
if(s+b[i]<=num)s+=b[i];
else
{
if(p<=1)return 0;
p--;
s=b[i];
}
}
if(p>=1)return 1;
return 0;
}
void get(int num)
{
int last=m,p=k,s=0;
for(int i=m;i>=1;i--)
{
if(s+b[i]>num)
{
p--;
a.push_back(make_pair(i+1,last));
last=i;
s=b[i];
}
else
{
s+=b[i];
}
}
}
int main()
{
cin>>m>>k;
int sss=0;
for(int i=1;i<=m;i++)
{
cin>>b[i];
sss+=b[i];
}
int l=1,r=sss;
for(;l<r;)
{
int mid=(l+r)/2;
if(pd(mid)==1)
{
r=mid;
}
else
{
l=mid+1;
}
}
get(r);
for(int i=k-1;i>=0;i--)
{
cout<<a[i].first<<' '<<a[i].second<<endl;
}
}