On PS6, is it cheating to implement a computer cheater?
Specifically: My strategy for implementing a computer player is just to write a function that calls is_valid_word with everything in word_list, finds point values for every word that returns True, and returns the highest-scoring word. It works, but is that cheating?
Maybe it is, maybe it isn't ;) I'd say implement it that way first, then think of ways you could implement it without ``cheating''.
It's not cheating and here's why. It's implementing a "brute force" or "exhaustive search" algorithm, and is probably the "gold standard" to test any other algorithm against. Once you have a way of absolutely knowing (by exhaustive search), then you have a reference for measuring performance improvement of other algorithms. Also, looking at it pedagogically, by PS6 we have not been introduced to sophisticated algorithms to avoid exhaustive search. To be strict, it would be cheating to use some algorithm that you know only by--ugh--reading ahead. :)