#include <iostream>
#include <memory.h>
#include <malloc.h>
using namespace std;
void SetStrikeDays(char* pDays, int nDays, int interval)
{
for(int i = interval; i <= nDays; i += interval)
{
int day = i % 7;
if ((day != 6) && (day != 0))
pDays[i] = 1;
}
}
void HandleDataSet()
{
int nDays, nPartyCnt;
cin >> nDays;
if (nDays <= 0)
{
cout << 0 << endl;
return;
}
char* pDays = (char*)calloc(nDays + 1, sizeof(char));
cin >> nPartyCnt;
for(int i = 0; i < nPartyCnt; ++i)
{
int interval;
cin >> interval;
SetStrikeDays(pDays, nDays, interval);
}
int sum = 0;
for(int i = 1; i <= nDays; ++i)
{
if (pDays[i] > 0)
++sum;
}
cout << sum << endl;
free(pDays);
}
void DoWork()
{
int nDataSetCnt = 0;
cin >> nDataSetCnt;
for (int i = 0; i < nDataSetCnt; ++i)
{
HandleDataSet();
}
}
int main(int argc, char* argv[])
{
DoWork();
return 0;
}