간단한 문제였으나, 새로운 것도 배울 수 있었다.
import sys
x, k = map(int,sys.stdin.readline().split())
p = eval(sys.stdin.readline().strip())
if p == k:
print(True)
else:
print(False)
바로 eval
이라는 함수이다. 위와 같이 원래는 eval
없이 p
를 입력하게 된다면, 'x**3+x**2+x+1'
이런식으로 문자열로 함수가 출력되어 p
의 x값에 이전에 정의한 x 값을 대입을 시키기 힘들어진다. 하지만 eval
함수를 사용하게 된다면 x값을 대입하는 것이 매우 쉬워진다. eval
은 매개변수로 받은 식을 문자열로 받아서, 실행해주는 함수라고 정의할 수 있다. 이를 적절히 사용하면 매우 편하게 식들을 짤 수 있을 것이다.
'알고리즘 테스트 > Hackerrank 문제풀이 및 해설' 카테고리의 다른 글
<Hackerrank 문제풀이: 파이썬> Power - Mod Power (0) | 2020.12.11 |
---|---|
<Hackerrank 문제풀이: 파이썬> Mod Divmod (0) | 2020.12.10 |
<Hackerrank 문제풀이: 파이썬> Set.add() (0) | 2020.12.06 |
<Hackerrank 문제풀이: 파이썬> Incorrect Regex (0) | 2020.12.05 |
<Hackerrank 문제풀이: 파이썬> itertools.combinations() (0) | 2020.12.04 |