728x90

알고리즘 문제를 풀다 보면, 정수를 나눈 몫과 나머지를 구해야 할 때가 있습니다.

예시) 7을 3으로 나눈 몫과 나머지를 구해야 하는 경우

 

다른 언어에서는..(또는 이 기능을 모르시는 분은)

보통 사람들은 나머지와 몫을 따로 구합니다

 

 

파이썬에서는

파이썬의 divmod와 unpacking을 이용하면 다음과 같이 코드를 짤 수 있습니다.

 

 

무조건 divmod를 사용하는 게 좋은 방법은 아닙니다.
가독성이나, 팀의 코드 스타일에 따라서, a//b, a%b와 같이 쓸 때가 더 좋을 수도 있습니다.
또한, divmod는 작은 숫자를 다룰 때는 a//b, a%b 보다 느립니다. 대신, 큰 숫자를 다룰 때는 전자가 후자보다 더 빠르지요.

728x90