반응형
[문제 출처]
https://www.acmicpc.net/problem/3004
3004번: 체스판 조각
상근이는 3003번에서 동혁이가 발견한 체스판을 톱으로 자르려고 한다. 상근이는 체스판을 최대 N번 자를 수 있으며, 변에 평행하게만 자를 수 있다. 또, 자를 때는 체스판의 그 변의 한쪽 끝에서
www.acmicpc.net
[소스 코드]
사각형을 가로 세로로 잘랐을 때 가장 조각이 많이 나올 때의 조각의 수를 구하는 문제이다.
한 방향으로 n번 자른다면 조각은 n+1개가 생긴다.
가로로 n번 세로로 m번 자르게 되면 조각은 (n+1) * (m+1) 개가 생성된다.
가장 많은 조각이 나오는 경우는 n번을 자른다고 할 때, 절반은 가로로 절반은 세로로 자를 때이다.
n이 짝수라면 절반 나눠서 가로 세로 자르면 되고, 홀수라면 1번 차이 나게 나눠서 자르면 된다.(연속되는 두 수)
ex)
n = 4 > 2, 2
n = 5 > 2, 3
n = 7 > 3, 4
#3004
n = int(input())
if n==1:
print(2)
else:
a = n//2
b = n - a
print((a+1)*(b+1))
반응형
'알고리즘 > python' 카테고리의 다른 글
[python/파이썬] 백준 1357 뒤집힌 덧셈 (0) | 2023.01.31 |
---|---|
[python/파이썬] 백준 1292 쉽게 푸는 문제 (0) | 2023.01.30 |
[python/파이썬] 백준 1247 부호 (0) | 2023.01.26 |
[python/파이썬] 백준 1145 적어도 대부분의 배수 (0) | 2023.01.25 |
[python/파이썬] 백준 1223 주사위 (0) | 2023.01.20 |