#include <iostream>
using namespace std;
int
n, m, a[21], b[21];
long double
ans[21][201], c[21][201];
void
__read__()
{
cin >> n >> m;
for( int i = 1; i <= m; i++ )
cin >> a[i] >> b[i];
}
void
__init__()
{
for( int i = 1; i <= m; i++ )
for( int j = 1; j <= n; j++ )
{
long double pr = j;
for( int k = 1; k < b[i]; k++ )
pr *= j;
c[i][j] = pr * a[i];
if( i == 1 )
ans[i][j] = c[i][j];
else
ans[i][j] = 3999999999;
}
}
void
__dp__()
{
for( int i = 2; i <= m; i++ )
for( int j = 1; j <= n; j++ )
for( int k = 0; k <= j; k++ )
if( ans[i][j] > ( ans[i - 1][j - k] + c[i][k] ) )
ans[i][j] = ( ans[i - 1][j - k] + c[i][k] );
}
void
__outp__()
{
cout << ans[m][n] << endl;
}
int
main()
{
__read__();
__init__();
__dp__();
__outp__();
return 0;
}