N,M=map(int,input().split()) G=[[]for _ in range(N)] for _ in range(M): u,v=map(int,input().split()) u-=1;v-=1 G[u].append(v) G[v].append(u) W=set() B=set() R=set() B.add(0) for i in range(1,N): W.add(i) for i in range(N): tmp=set() for u in W: for v in G[u]: if v in B: tmp.add(u);R.add(u) for t in tmp: W.discard(t) for u in B: W.add(u) B.clear() for u in R: B.add(u) R.clear() print(len(B))