[AtCoder Beginner Contest 213] Task B - Booby Prize 두 번째로 큰 수 찾기

문제

Task B - Booby Prize (배열에서 두 번째로 큰 수의 인덱스 찾기)

나의 풀이

이번 문제는 무난했다. 배열에서 두 번째로 큰 수를 찾고 그 인덱스(+1)를 반환하면 된다. Task A보다 common하고 쉬웠다.

n = int(input())
arr = list(map(int, input().split()))
 
second = largest = -10**9
secondidx = largestidx = -1
 
for idx in range(n):
    #print(idx, arr[idx])
    if arr[idx] > largest:
        second = largest
        secondidx = largestidx
        largest = arr[idx]
        largestidx = idx
    elif second < arr[idx] < largest:
        second = arr[idx]
        secondidx = idx
 
print(secondidx+1)

결과

좋은 웹페이지 즐겨찾기