#include <iostream>
using namespace std;

char dt[5000000];
int n, m;
int a[1001];

bool can_place_at(int p)
{
    if (dt[p] + 80 > 120) return false;
    for (int i = 1; i <= m; ++ i)
        if (dt[p+a[i]-1]+40 > 120)
            return false;
    return true;
}

void place_at(int p)
{
    dt[p] += 80;
    for (int i = 1; i <= m; ++ i)
        dt[p+a[i]-1] += 40;
}

int main()
{

    cin >> n >> m;
    for (int i = 1; i <= m; ++ i)
        cin >> a[i];

    int last = 1;
    for (int wl = 1; wl <= n; ++ wl)
    {
        while (!can_place_at(last)) last++;
        place_at(last);
    }

    int ans = 5000000-1;
    while (!dt[ans]) ans--;
    cout << ans << endl;

    return 0;
}