동캄의 코딩도장

백준 2467 [용액] 파이썬 본문

코테/BOJ

백준 2467 [용액] 파이썬

동 캄 2022. 2. 12. 00:55

https://www.acmicpc.net/problem/2467

 

2467번: 용액

첫째 줄에는 전체 용액의 수 N이 입력된다. N은 2 이상 100,000 이하의 정수이다. 둘째 줄에는 용액의 특성값을 나타내는 N개의 정수가 빈칸을 사이에 두고 오름차순으로 입력되며, 이 수들은 모두 -

www.acmicpc.net

n = int(input())
lst = list(map(int, input().split()))
val = 10000000000
answer = [0, 0]
i = 0
j = len(lst)-1
while i < j:
    if lst[j]+lst[i] < 0:
        if val > abs(lst[i]+lst[j]):
            val = abs(lst[i]+lst[j])
            answer[0] = lst[i]
            answer[1] = lst[j]
        i += 1
    elif lst[j]+lst[i] > 0:
        if val > abs(lst[i]+lst[j]):
            val = abs(lst[i]+lst[j])
            answer[0] = lst[i]
            answer[1] = lst[j]
        j -= 1
    else:
        answer[0] = lst[i]
        answer[1] = lst[j]
        break

print(answer[0], answer[1])

앞으로 가면 증가, 뒤로가면 감소 인것을 이용하여 0에 최대한 가까운 수들을 구한다.

 

'코테 > BOJ' 카테고리의 다른 글

백준 2231 [분해합] 파이썬  (0) 2022.02.12
백준 2493 [탑] 파이썬  (0) 2022.02.12
백준 2166 [다각형의 면적] 파이썬  (0) 2022.02.12
백준 12852 [1로 만들기 2]  (0) 2022.02.11
백준 1213 [펠린드롬 만들기] 파이썬  (0) 2022.02.11