본문 바로가기

코딩 테스트/프로그래머스

[Python] 프로그래머스 lv.0 가까운 1 찾기

 

정답 코드

def solution(arr, idx):
    answer = -1
    for i in range(len(arr)) :
        if i < idx :
            continue
        elif arr[i] == 1 :
            answer = i
            break
    return answer

 

다른 사람 풀이 1

def solution(arr, idx):
    answer = -1
    for i in range(idx, len(arr)) :
        if arr[i] == 1 :
            answer = i
            break
    return answer

 

다른 사람 풀이 2

def solution(arr, idx):
    answer = 0
    try:
        answer = arr.index(1, idx)
    except:
        answer = -1

    return answer
  • list.index (x, start)
    • 리스트에서 특정 값 x가 처음으로 나타나는 인덱스 반환
    • start : 탐색할 인덱스 지정
  • try - except
    • try 블록에서 예외가 발생할 가능성이 있는 코드를 실행
    • 만약 예외가 발생하면 except 블록 실행