#include <stdio.h>
#include <stdlib.h>

/*
ZADATAK:Proizvod
JEZIK:C
*/

int hasonlit(char *a,char *b)
  {
  return *b-*a;
  }

int main(int argc, char *argv[])
{
  FILE *b,*k;
  int n,i,j=0,z=0,m,s1=0,s2,r,q;
  char c,*tomb,at[5001],bt[5001],res[10];
  b=fopen("proizvod.in","r");
  k=fopen("proizvod.out","w");
  fscanf(b,"%d%d",&n,&m);
  getc(b);getc(b);
  tomb=malloc(n*sizeof(char));
  for(i=0;i<n;i++)
    {
    c=getc(b);
    tomb[i]=c;
    }
  qsort(tomb,n,sizeof(char),hasonlit);
  for(i=0;i<n;i+=2)
    {
    at[j]=tomb[i];
    if(tomb[i+1]!=0)
      bt[z]=tomb[i+1];
    s1=atoi(at)*atoi(bt);
    at[j]=0;
    if(tomb[i+1]!=0)
      bt[z]=0;
    bt[z]=tomb[i];
    if(tomb[i+1]!=0)
      at[j]=tomb[i+1];
    s2=atoi(at)*atoi(bt);
    bt[z]=0;
    if(tomb[i+1]!=0)
      at[j]=0;
    if(s1>s2)
      {
      at[j++]=tomb[i];
      if(tomb[i+1]!=0)
        bt[z++]=tomb[i+1];
      }
    else
      {
      bt[z++]=tomb[i];
      if(tomb[i+1]!=0)
        at[j++]=tomb[i+1];
      }
    }
  r=atoi(at)*atoi(bt);
  sprintf(res,"%d",r);
  i=0;
  while(res[i]!=0)
    i++;
  q=i;
  if(q<m)
    {
    for(i=0;i<(m-q);i++)
      putc('0',k);
    for(i=0;i<m;i++)
      putc(res[i],k);
    }
  else
    for(i=(q-m);i<q;i++)
      putc(res[i],k);
  fclose(b);
  fclose(k);
  return 0;
}
