#include <bits/stdc++.h>
using namespace std;
int n, m;
int a[100005], ans, b;
void swap(int &a, int &b) {
  if (a == b) return;
  a = a xor b;
  b = a xor b;
  a = a xor b;
}
void kp(int l, int r) {
  int i, j, m, t;
  i = l;
  j = r;
  m = a[(l + r) / 2];
  while (i <= j) {
    while (a[i] < m) ++i;
    while (a[j] > m) --j;
    if (i <= j) {
      swap(a[i], a[j]);
      ++i;
      --j;
    };
  };
  if (i < r) kp(i, r);
  if (j > l) kp(l, j);
};
int main() {
  scanf("%d%d", &n, &m);
  for (int i = 1; i <= m; ++i) scanf("%d%d", &b, &a[i]);
  for (long long i = m; i >= 1; i--)
    if (i % 2 == 1) {
      if (i * (i - 1) / 2 + 1 <= n) {
        ans = i;
        break;
      }
    } else {
      if (i * (i - 1) / 2 + i / 2 <= n) {
        ans = i;
        break;
      }
    }
  long long sum = 0;
  kp(1, m);
  for (int i = m; i >= m - ans + 1; i--) sum += a[i];
  printf("%I64d\n", sum);
  return 0;
}
