using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Bojenje
{
    class Program
    {
        static void rekurzija(ref int[,]matrica, int[]niz,int pozicija,ref int suma)
        {
            if(pozicija==matrica.GetLength(0))
            {
                int s = 0;
                for(int i=0;i<matrica.GetLength(1);i++)
                {
                    int x = 0;
                    int y = 0;
                    for (int j = 0; j < matrica.GetLength(0); j++)
                        if (matrica[j, i] == 1)
                            x++;
                    y = matrica.GetLength(0) - x;
                    s += (x * y);
                }
                if (suma > s)
                    suma = s;
            }
            else
            {
                for (int i = 0; i < niz[pozicija]; i++)
                    matrica[pozicija, i] = 1;
                rekurzija(ref matrica, niz, pozicija + 1,ref suma);
                for (int i = 0; i < niz[pozicija]; i++)
                    matrica[pozicija, i] = 0;
                for (int i = matrica.GetLength(1)-1; i > matrica.GetLength(1)-1-niz[pozicija]; i--)
                    matrica[pozicija, i] = 1;
                rekurzija(ref matrica, niz, pozicija + 1,ref suma);
            }
        }
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            string[] s2 = s.Split(' ');
            int n = int.Parse(s2[0]);
            int m = int.Parse(s2[1]);
            int[] niz = new int[n];
            int[,] a = new int[n, m];
            for(int i=0;i<n;i++)
            {
                niz[i] = int.Parse(Console.ReadLine());
            }
            int suma = 999999;
            rekurzija(ref a, niz, 0, ref suma);
            Console.WriteLine(suma);
        }
    }
}