You are using very small lists

Your algorithms are based on the fact that the list is small. If you took your basic ideas and applied them to more complex or impossible lists, they would run much longer then any of our lifetimes.
By impossible, suppose you were given a list of incompatible students that makes it impossible to come up with 100 students.
Your work is cut out for you
