Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 크기가 n x m인 직사각형 내부에 배치할 수 있는 크기가 2x1인 직사각형의 수를 찾으십시오.


2개의 값 n과 m이 있다고 가정합니다. n x m 크기의 직사각형 안에 설정할 수 있는 크기 2x1의 직사각형 수를 찾아야 합니다. 고려해야 할 몇 가지 조건이 있습니다. -

  • 두 개의 작은 직사각형은 겹칠 수 없습니다.

  • 모든 작은 직사각형은 완전히 큰 직사각형 안에 있습니다. 더 큰 직사각형의 가장자리를 만지는 것은 허용됩니다.

따라서 입력이 다음과 같으면

Python에서 크기가 n x m인 직사각형 내부에 배치할 수 있는 크기가 2x1인 직사각형의 수를 찾으십시오.

n =3, m =3이면 출력은 4가 됩니다.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • n mod 2가 0과 같으면

    • 리턴(n / 2) * m

  • 그렇지 않으면 m mod 2가 0이면

    • 반환(m / 2) * n

  • 반환 (n * m - 1) / 2

예시

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

def count_rect(n, m):
   if (n % 2 == 0):
      return (n / 2) * m
   elif (m % 2 == 0):
      return (m // 2) * n
   return (n * m - 1) // 2
n = 3
m = 3
print(count_rect(n, m))

입력:

3, 3

출력

4