We prove that the maximum clique problem can be solved in polynomial time. First, we prove the relationship between the maximum clique size and the spectrum of a graph. Next, we provide a function to accurately obtain the number of eigenvalues a certain bound of a symmetric matrix of integers in polynomial time using integer operations. We then provide a method to control the graph spectrum. Finally, we construct an algorithm to extract a maximum clique from a simple graph by deleting the vertices whose maximum clique size remains unchanged. The computational complexity of this algorithm is O(n^9). We can then conclude that the complexity classes P and NP are equal.