n, m = map(int, input().strip().split())
def sloveFun(n, m):
return (n-1) + n * (m-1)
print(sloveFun(n, m));
n, m 변수에 각각 숫자를 입력하여 저장해줍니다.
sloveFun이라는 함수를 선언해서 매개변수 n과 m을 받고 위 문제에서의 계산식으로 계산하여 리턴해줍니다.
예를 들어 5 4을 입력하여 5x4의 초콜릿이 있다고 가정합니다.
가로로 4번을 자르면 1x4짜리가 5조각이 나오고, 이 5조각을 각각 3번씩 자르면 1x1짜리의 초콜릿으로 나누어집니다.
위에서 n=5 / m=4이기에 식으로 만들어본다면,
가로로 (n-1)번을 자르면 1xm짜리가 n조각 나오고, 이 n조각을 각각 (m-1)번씩 자르면 1x1짜리의 초콜릿으로 나누어집니다.
여기서 자른횟수를 구하면 가로에서 (n-1)번 잘랐고, 세로에서 n개의 조각을 각각 (m-1)잘랐기에 이것을 더해주면
(n-1) + n(m-1)이 됩니다.
'Dev. Etc > Algorithm' 카테고리의 다른 글
[알고리즘] JAVA독과 함께! - python (0) | 2021.09.02 |
---|---|
[알고리즘] 암호를 해독해라 - python (0) | 2021.08.31 |
[Python] 백준 알고리즘 11021번 문제풀이 (A+B - 7) (0) | 2021.05.13 |
[Python] 백준 알고리즘 3046번 문제풀이 (R2) (0) | 2021.05.07 |
[Python] 백준 알고리즘 2588번 문제풀이 (곱셈) (0) | 2021.05.06 |
[Python] 백준 알고리즘 10430번 문제풀이 (나머지) (0) | 2021.05.05 |
[오라클] 프로그래머스 59035번 문제풀이 (역순 정렬하기) (0) | 2021.04.30 |
[오라클] 프로그래머스 59034번 문제풀이 (모든 레코드 조회하기) (0) | 2021.04.29 |