https://www.acmicpc.net/problem/2163
2163번: 초콜릿 자르기
정화는 N×M 크기의 초콜릿을 하나 가지고 있다. 초콜릿은 금이 가 있는 모양을 하고 있으며, 그 금에 의해 N×M개의 조각으로 나눠질 수 있다. 초콜릿의 크기가 너무 크다고 생각한 그녀는 초콜릿을 친구들과 나눠 먹기로 했다. 이를 위해서 정화는 초콜릿을 계속 쪼개서 총 N×M개의 조각으로 쪼개려고 한다. 초콜릿을 쪼갤 때에는 초콜릿 조각을 하나 들고, 적당한 위치에서 초콜릿을 쪼갠다. 초콜릿을 쪼갤 때에는 금이 가 있는 위치에서만 쪼갤 수 있다. 이와
www.acmicpc.net
N을 세로, M을 가로로 보았을 때
세로를 N-1번 잘라서 N개의 1 X M의 초콜릿을 얻고
1 X M을 M-1번 잘라서 1 X 1의 초콜릿을 얻는다.
따라서, (N - 1) + N * (M - 1) = N - 1 + N * M - N = N * M - 1이다.
#include <stdio.h>
int main()
{
int n, m;
scanf("%d %d", &n, &m);
printf("%d", n * m - 1);
}
'Problem Solving' 카테고리의 다른 글
[BOJ 1924] 2007년 (0) | 2020.01.03 |
---|---|
[BOJ 9095] 1, 2, 3 더하기 (0) | 2020.01.02 |
[BOJ 1788] 피보나치 수의 확장 (0) | 2020.01.01 |
[BOJ 2407] 조합 (0) | 2020.01.01 |
[BOJ 3054] 피터팬 프레임 (0) | 2019.12.30 |