divmod 3

몫과 나머지 - divmod

알고리즘 문제를 풀 때, 정수를 나눈 몫과 나머지를 구해야 할 때면, 보통 아래와 같은 방법으로 구합니다. ex) 29을 3으로 나눈 몫과 나머지를 구해야 하는 경우 a = 29 b = 3 print(a//b, a%b) # 9, 2 하지만, 파이썬에서는 divmod와 unpacking 기능이 있는데 divmod를 사용하면 아래와 같이 간편하게 몫과 나머지를 구할 수 있습니다! divmod는 한번에 몫과 나머지를 반환해주는 파이썬 내부 함수에요! a = 29 b = 3 print(*divmod(a, b))# 9 2 ◆ divmod를 사용할 때 주의할 점◆ - 무조건 divmod를 사용하는 것이 좋은 것은 아닙니다! 가독성이나, 팀의 코드 스타일에 따라서, 근본적인 //, % 의 방법으로 쓰는게 더 좋을 수..

[프로그래머스] 코딩테스트 연습 - 124 나라의 숫자(Python)

문제 설명 더보기 문제 124 나라가 있습니다. 124 나라에서는 10진법이 아닌 다음과 같은 자신들만의 규칙으로 수를 표현합니다. 124 나라에는 자연수만 존재합니다. 124 나라에는 모든 수를 표현할 때 1, 2, 4만 사용합니다. 예를 들어서 124 나라에서 사용하는 숫자는 다음과 같이 변환됩니다. 10진법 124 나라 10진법 124 나라 1 1 6 14 2 2 7 21 3 4 8 22 4 11 9 24 5 12 10 41 자연수 n이 매개변수로 주어질 때, n을 124 나라에서 사용하는 숫자로 바꾼 값을 return 하도록 solution 함수를 완성해 주세요. 제한 n은 50,000,000이하의 자연수 입니다. 입출력 예시 입출력 예 n result 1 1 2 2 3 4 4 11 https:/..

[백준/알고리즘/python/java] 16428번 - A/B - 3

이미지를 누르면 문제링크를 보실 수 있습니다. 굉장히 단순한 문제인데, 정답률이 그에 비해선 막 높진 않아서 풀어본 문제다. 처음엔 나 역시 틀렸다. 다시한번, 써가면서 풀어봤는데, 특징이 있었다. A가 나누어지는 수이고 B가 나누는 수라고 할 때, 1) 단순히 A, B둘다 양수라고 생각하면, 몫은 A//B 가 되고, 나머지는 A%B 가 될 것이다. 2) A가 음수이고 B가 양수라면, 역시 몫은 A//B 가 되고, 나머지는 A%B 가 될 것이다. 3) A가 0이면, B가 뭐든간에, 몫과 나머지는 둘 다 0 이 나올것이다. 여기까진 그냥 우리가 생각하는 수학이다. 4) A가 음수이고 B가 음수라면, 5) A가 양수이고 B가 음수라면, 즉, 나누는 수 B가 음수라면, 값이 달라졌다. 나머지는 양수여야 하는데..

반응형