[백준] 2230번 수 고르기

dev-log·2022년 3월 16일

전형적인 투포인터 문제

0 ≤ M ≤ 2,000,000,000
M의 값을 int(1e9*2)로 초기화해줘야 한다.
int(1e9)로 초기화해서 값이 작아서 자꾸 에러가 났다.

import sys
input=sys.stdin.readline

n,m=map(int,input().split())

num=[]
for i in range(n):
    num.append(int(input()))

num.sort()
start,end=0,0
result=0
answer=int(1e9*2)
while 0<=start and start<=end and end<n:
    result=num[end]-num[start]
    if result>=m:
        answer=min(answer,result)
        start+=1
    else: end+=1

print(answer)

profile
배운 걸 기록하는 곳입니다.

0개의 댓글