#include<bits/stdc++.h>
using namespace std;
int n,k,ans1=-1e9,ans2=1e9,a[150],b[50];
void dfs(int x,int t)
{
if(t<0||x-b[t+1]>n||b[k]+n==b[t+1]||x>n+n)return;
if(t==0)
{
int ans=0;
b[0]=b[k]+n;
for(int i=k-1;i>=0;i--)
{
int l=b[i],r=b[i+1];
int ans3=a[l-1]-a[r-1];
if(ans3<0)
{
ans3=0-ans3;
ans3%=10;
ans3=10-ans3;
}
if(ans3&&!ans)ans=1;
ans3%=10;
ans*=ans3;
}
ans1=max(ans1,ans);
ans2=min(ans2,ans);
return;
}
b[t]=x;
if(!(t-1<0))dfs(x+1,t-1);
b[t]=0;
if(!(x+1-b[t+1]>n))dfs(x+1,t);
}
int main()
{
scanf("%d%d",&n,&k);
for(int i=1;i<=n;i++)
{
scanf("%d",&a[i]);
a[n+i]=a[i];
}
for(int i=1;i<=n+n;i++)a[i]+=a[i-1];
dfs(1,k);
printf("%d\n%d",ans2,ans1);
return 0;
}