I prefer to avoid the "do I have what it takes to get in?" question, and would rather focus on how a particular graduate committee contemplates a few poor grades on a transcript, particularly in core introductory courses related to the major. Let's say person A gets 1 or 2 C's in his core classes (maybe discrete math and intro to programming), but then has A's and B's across the board in harder subjects such as Machine Learning or Combinatorics. How does the admissions committee view this? Do they care about the C's at all in that case? That is to say, taking other factors such as the GRE or Recommendations into account, what really matters?