안녕하세요, 위의 코드는 3~5번 라인을 보면 문제에서 주어진 알파벳 순서대로 값이 들어오는 것으로 간주되고 있는 듯합니다. 예를 들어, 문제에서 A, B, C 순으로 들어오지 않고 A, C, B 순으로 들어오면 답이 틀리게 되고, 중복된 알파벳이 들어오게 되면 9번 라인에서 NonType이 반환되는 경우가 생겨 11 번 라인에서 Type error 가 발생합니다.
4번 라인을 문제에 나오는 알파벳 순서대로가 아니라 A, B, C, ... 순으로 입력되는 것으로 코드를 변경해주시면 될 것 같습니다.
반례는 아래와 같습니다.
입력)
4 AC+B+C+A+D+ 1 2 3 4
정답)
14.00
위의 코드 결과)
Traceback (most recent call last): File "main.py", line 12, in <module> tmp = eval(stack.pop(-2) + equ[i] + stack.pop(-1)) TypeError: can only concatenate str (not "NoneType") to str
putisong 2년 전
처음 keyerror 가 나서 딕셔너리에서 문제가 있는것 같아서
anl[equ[i]] 에서 stack.append(anl.get(equ[i])) 로 수정했는데요
이건 typeerror 가 발생하네요
어디가 문제인지 검토 부탁드립니다