백준 2309 일곱 난쟁이

청천·2022년 7월 27일
0

백준

목록 보기
1/41

실수가 너무 잦았던 문제.

헷갈렸던 개념
range(0, n)은 0 부터 n-1 까지 이다.

풀이
조건을 위해 전체 합을 두 변수로 빼준다.

h = []
for i in range(9):
    h.append(int(input()))

h.sort()


s = 0
e = 8
flag = False

for i in range(8):
    for j in range(i+1, 9):
        total = sum(h)
        if total - h[i] - h[j] == 100:
            s, e = i, j
            flag = True
            break
    if flag:
        break

for ans in range(9):
    if ans != s and ans != e:
        print(h[ans])
  
# 투 포인터 사용
```python
h = []
for i in range(9):
    h.append(int(input()))
h.sort()

S = sum(h) - 100
s = 0
e = 8

while True:
    if l[s] + l[e] > S:
        e -= 1
    elif l[s] + l[e] < S:
        s += 1
    else:
        break

for i in range(9):
    if i != s and i != e:
        print(h[i])

0개의 댓글