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

Python에서 모든 1이 차례로 존재하는지 확인하는 프로그램

<시간/>

값이 1인 요소를 하나 이상 포함하는 nums라는 숫자 목록이 있다고 가정합니다. 모든 1이 연속적으로 나타나는지 여부를 확인해야 합니다.

따라서 입력이 nums =[8, 2, 1, 1, 1, 3, 5]와 같으면 출력은 True가 됩니다.

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

  • 방문 횟수:=0

  • 숫자의 각 x에 대해 수행

    • x가 1과 같으면

      • 방문 횟수가 2와 같으면

        • 거짓을 반환

      • 방문 횟수:=1

    • 그렇지 않으면 방문 시 0이 아닌 경우

      • 방문:=2

  • 참을 반환

더 나은 이해를 위해 다음 구현을 살펴보겠습니다.

def solve(nums):
   visited = 0
   for x in nums:
      if x == 1:
         if visited == 2:
            return False
         visited = 1
      elif visited:
         visited = 2
   return True

nums = [8, 2, 1, 1, 1, 3, 5]
print(solve(nums))

입력

[8, 2, 1, 1, 1, 3, 5]

출력

True