#include <iostream>
#include <cstring>
#include <cmath>
using namespace std ;
const int N=203;
#define int long long
int a[N],b[N],n,m,f[N][2002];
int func(int i,int k){
return a[i]*(int)pow(k,b[i]);
}
void solve(){
int i,j,k;
memset(f,127,sizeof f);
for(i=0;i<=N;i++) f[i][0]=0;
for(i=1;i<=n;i++)
for(j=m;j>=0;j--)
for(k=0;k<=m;k++){
if(j>=k)
f[i][j]=min(f[i][j],f[i-1][j-k]+func(i,k));
}
cout<<f[n][m];
}
signed main(){
cin>>m>>n;
for(int i=1;i<=n;i++) cin>>a[i]>>b[i];
solve();
}