n진법으로 표기된 string을 10진법 숫자로 변환하기 - int 함수 진법 변환 문제는 알고리즘 문제나 숙제로 자주 나오는 유형이지요. 이번 시간에는 n 진법으로 표기된 문자열을 10진법 숫자로 변환하는 방법을 배워봅시다. 예시) 5진법으로 적힌 문자열 '3212'를 10진법으로 바꾸기 다른 언어에서는..(또는 이 기능을 모르시는 분은) 보통 사람들은 for 문을 이용해 숫자를 곱해가며 문제를 풉니다. num = '3212' base = 5 answer = 0 for idx, number in enumerate(num[::-1]): answer += int(number) * (base ** idx) 파이썬의 int(x, base=10) 함수는 진법 변환을 지원합니다. 이 기본적인 함수를 잘 쓰면 코드..
알고리즘 문제를 풀다 보면, 정수를 나눈 몫과 나머지를 구해야 할 때가 있습니다. 예시) 7을 3으로 나눈 몫과 나머지를 구해야 하는 경우 다른 언어에서는..(또는 이 기능을 모르시는 분은) 보통 사람들은 나머지와 몫을 따로 구합니다 a = 7 b = 5 print(a//b, a%b) 파이썬에서는 파이썬의 divmod와 unpacking(*)을 이용하면 다음과 같이 코드를 짤 수 있습니다. a = 7 b = 5 print(*divmod(a, b)) divemode(a,b) => a를 b로 나눈 목과 나머지를 tuple로 return ⨳ divmod를 사용할 때 주의할 점 무조건 divmod를 사용하는 게 좋은 방법은 아닙니다.가독성이나, 팀의 코드 스타일에 따라서, a//b, a%b와 같이 쓸 때가 더 ..
명이나물 라이브러리