#include<bits/stdc++.h>
using namespace std;
struct node
{
long long p,c;
bool operator<(node x){
return x.c<c;
}
}Q[1005];
long long n,m,x,y,op[1005],len;
long long num;
bool flag(){
for(long long i=2;i<=n;i++)if(op[i]>=op[1])return 1;
return 0;
}
stack<int> s;
signed main() {
cin>>n>>m;
while(m--){
cin>>x>>y;
op[x]++;
if(x!=1)Q[len++]={x,y};
}
sort(Q,Q+len);
while(flag()){
x=Q[--len].p;
y=Q[len].c;
op[x]--;
op[1]++;
num+=y;
}
cout<<num;
return 0;
}