#include <bits/stdc++.h>
using namespace std;
set<long long int> v[105];
long long int vis[105];
int main() {
  long long int n, m, x, y, i;
  cin >> n >> m;
  for (i = 1; i <= n; i++) v[i].clear();
  while (m--) {
    cin >> x >> y;
    v[x].insert(y), v[y].insert(x);
  }
  long long int l = 1, c, p, cnt = 0;
  while (l != 0) {
    vector<long long int> a;
    for (i = 1; i <= n; i++) {
      if (v[i].size() == 1) a.push_back(i);
    }
    l = a.size();
    for (i = 0; i < a.size(); i++) {
      p = a[i];
      c = *(v[p].begin());
      v[c].erase(p);
      v[p].clear();
    }
    cnt++;
  }
  cout << cnt - 1;
}
