본문 바로가기
PROGRAMMING CODE/PYTHON

[BAEKJOON] No.2163 Python

by daye_ 2023. 1. 27.

초콜릿 자르기

 

 

2163번: 초콜릿 자르기

정화는 N×M 크기의 초콜릿을 하나 가지고 있다. 초콜릿은 금이 가 있는 모양을 하고 있으며, 그 금에 의해 N×M개의 조각으로 나눠질 수 있다. 초콜릿의 크기가 너무 크다고 생각한 그녀는 초콜릿

www.acmicpc.net

 

 

 

예상 코드

import sys

N,M = map(int,input().split())
width = N*M
number = width
sum = 0

while 1 :
  if number==1 : break
  sum += (width/number)
  number = number/2
print("%d" % sum)

결과 : 런타임 에러

내가 짠 코드는 2의 배수로 각각 나눠지는 개수를 더하도록 기능하는 것이었다.

하지만.. 수식으로 간단히 풀릴줄이야

 

2의 크기는 2-1만큼, 8의 크기는 8-1만큼 쪼개야 하기 때문에 결국

n*m-1 이 코드의 정답

import sys

N,M = map(int,input().split())
print(N*M-1)

 

'PROGRAMMING CODE > PYTHON' 카테고리의 다른 글

[BAEKJOON] No.2914 Python  (0) 2023.02.06
[BAEKJOON] No.10699 Python  (0) 2023.01.27
[BAEKJOON] No.3046 Python  (0) 2023.01.27
[BAEKJOON] No.10986 Python  (0) 2023.01.25
PYTHON DOWNLODE _ macOS  (0) 2021.10.14