#include<iostream>
#include<stdio.h>
#include<cstdlib>
#include<string.h>
using namespace std;
int sn ,a[100],zj[40][100]; //ai里面保存的每次的数
char s[100];
int k;
int maxn=0;
void dfs(int cs,int sum, char x,char temp[], int ti ,int si)
{
int temp2;
//cout<<"cs "<<cs <<"sum "<<sum<<" x "<<x <<" ti "<<ti<<" si "<<si<<endl;
//cout<<"temp "<<temp[ti]<<endl;
char temp3[100];
if(k-cs==0)
{
int l=0;
for(int j=si;j<sn;j++)
{
temp3[l]=s[j];
l++;
}
temp2=atoi(temp3 ) ;
sum=sum*temp2;
if(maxn<sum) maxn =sum;
return ;
}
if(k-cs == sn-si-1)
{
//当前位置必须按乘号
temp[ti] =x;
temp2 =atoi(temp);
//cout<<temp2<<" "<<sum<<endl;
sum =temp2*sum;
//cout<<sum<<endl;
for(int j=si+1;j<sn;j++)
{
temp3[0]=s[j];
temp2=atoi(temp3 ) ;
//cout<<temp2<<endl;
sum = sum*temp2;
}
if(maxn<sum) maxn =sum;
temp[ti] =NULL;
ti=0;
return ;
}
if(cs == 0&&x!='*')//如果乘号个数是0的话:
{
temp[ti] = x;
//cout<<"temp "<<temp[ti]<<endl;
ti++;
//cout<<"cs "<<cs <<"sum "<<sum<<" x "<<x <<" ti "<<ti<<" si "<<si<<endl;
dfs(cs ,sum,s[si+1],temp,ti,si+1);
//cout<<"cs "<<cs <<"sum "<<sum<<" x "<<x <<" ti "<<ti<<" si "<<si<<endl;
dfs(cs ,sum,'*',temp,ti, si );
}
if(x =='*'&&cs==0)
{
//int size =temp.size();
temp2 =atoi(temp);
//cout<<temp2<<endl;
sum =temp2;
//cout<<sum<<endl;
memset(temp,sizeof(temp) ,NULL);;
memset(a,sizeof(a) ,0);
ti=0;
//cout<<"cs "<<cs <<"sum "<<sum<<" x "<<x <<" ti "<<ti<<" si "<<si<<endl;
dfs(cs+1 ,sum,s[si+1],temp,ti,si+1);
}
if(x!='*'&&cs>0)//当前位置不是乘号,并且乘号数大于0
{
temp[ti] =s[si];
//cout<<temp[ti]<<endl;
ti++;
//cout<<"cs "<<cs <<"sum "<<sum<<" x "<<x <<" ti "<<ti<<" si "<<si<<endl;
dfs(cs ,sum,s[si+1],temp,ti,si+1);
//cout<<"cs "<<cs <<"sum "<<sum<<" x "<<x <<" ti "<<ti<<" si "<<si<<endl;
dfs(cs ,sum,'*',temp,ti,si );
temp[ti] =NULL;
}
if(x=='*'&&cs>0)
{
temp2 =atoi(temp);
//cout<<temp2<<" "<<sum<<endl;
sum = sum * temp2;
//cout<<sum<<endl;
temp=NULL;
ti=0;
//cout<<"cs "<<cs <<"sum "<<sum<<" x "<<x <<" ti "<<ti<<" si "<<si<<endl;
dfs(cs+1 ,sum,s[si+1],temp,ti,si+1);
}
}
int main(void)
{
int n;
cin>>n>>k;
cin>>s;
sn= n;
char temp[100]="";
temp[0]=s[0];
//temp = "";
dfs( 0,1,s[0],temp,0,0);
cout<<maxn;
return 0;
}