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

파이썬에서 숫자 삼각형의 라인 l의 첫 번째 이벤트 번호의 위치를 ​​찾는 프로그램

<시간/>

아래와 같은 숫자 삼각형을 생성한다고 가정합니다.

      1
    1 1 1
  1 2 3 2 1
1 3 6 7 6 3 1

각 행에서 요소는 그 위에 세 개의 숫자를 추가하여 생성됩니다. 이제 줄 번호 l이 있는 경우. 해당 라인의 첫 번째 짝수의 위치를 ​​찾아야 합니다. 위치 값은 1부터 시작합니다.

따라서 입력이 l =5와 같으면 출력은 2가 됩니다.

           1
        1  1  1
     1  2  3  2  1
  1  3  6  7  6  3 1
1 4 10 16 19 16 10 4 1

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

  • l이 1과 같거나 l이 2와 같으면
    • 반환 -1
  • 그렇지 않으면 l mod 2가 0과 같을 때
    • l mod 4가 0과 같으면
      • 3 반환
    • 그렇지 않으면
      • 4 반환
  • 그렇지 않으면
    • 2 반환

예시

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

def solve(l):
   if l == 1 or l == 2 :
      return -1
   elif l % 2 == 0:
      if l % 4 == 0:
         return 3
      else:
         return 4
   else:
      return 2

l = 5
print(solve(l))

입력

5

출력

2