diff options
author | Aleksander Sadikov <aleksander.sadikov@fri.uni-lj.si> | 2016-03-21 16:09:35 +0100 |
---|---|---|
committer | Aleksander Sadikov <aleksander.sadikov@fri.uni-lj.si> | 2016-03-21 16:09:35 +0100 |
commit | 1eae572b3854231a5af88c4fe2ecfc0fd258ab6e (patch) | |
tree | 5bd0c555a85d0dd89be7abee3ba494f6f3cada17 /prolog/problems/lists_advanced/palindrome_1/common.py | |
parent | 147f9800941ed6111d1f944be3069f10e0e61ba7 (diff) |
Hints and plans for palindrome/1 added.
Diffstat (limited to 'prolog/problems/lists_advanced/palindrome_1/common.py')
-rw-r--r-- | prolog/problems/lists_advanced/palindrome_1/common.py | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/prolog/problems/lists_advanced/palindrome_1/common.py b/prolog/problems/lists_advanced/palindrome_1/common.py index bbd28fb..2299e45 100644 --- a/prolog/problems/lists_advanced/palindrome_1/common.py +++ b/prolog/problems/lists_advanced/palindrome_1/common.py @@ -32,7 +32,8 @@ hint_type = { 'one_base_case_missing': Hint('one_base_case_missing'), 'arbitrary_base_case': Hint('arbitrary_base_case'), 'last_used': Hint('last_used'), - 'final_hint': Hint('final_hint'), + 'final_hint_1': Hint('final_hint_1'), + 'final_hint_2': Hint('final_hint_2'), } test_cases = [ @@ -62,7 +63,12 @@ def test(code, aux_code): hints = [{'id': 'test_results', 'args': {'passed': n_correct, 'total': len(test_cases)}}] if n_correct == len(test_cases): - hints += [{'id': 'final_hint'}] + tokens = prolog.util.tokenize(code) + if prolog.util.Token('NAME', 'rev') not in tokens: + hints += [{'id': 'final_hint_1'}] + if prolog.util.Token('NAME', 'rev') in tokens and \ + (prolog.util.Token('EQU', '=') in tokens or prolog.util.Token('EQ', '==') in tokens): + hints += [{'id': 'final_hint_2'}] return n_correct, len(test_cases), hints def hint(code, aux_code): |