정답 코드
#include <bits/stdc++.h>
using namespace std;
int n, m;
int a[100005];
int mn = 0x7fffffff;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
cin >> n >> m;
for(int i = 0; i < n; i++) cin >> a[i];
sort(a, a+n);
int en = 0;
for(int st = 0; st < n; st++){
while(en < n && a[en] - a[st] < m) en++;
if(en == n) break; // en이 범위를 벗어날 시 종료
mn = min(mn, a[en] - a[st]);
}
cout << mn;
}
'Algorithm > C++' 카테고리의 다른 글
[백준 2003] 수들의 합 2 (0) | 2022.11.01 |
---|---|
[백준 1806] 부분합 (0) | 2022.11.01 |
[백준 14888] 연산자 끼워넣기 (0) | 2022.10.20 |
[백준 1789] 수들의 합 (0) | 2022.10.18 |
[백준 11727] 2 x n 타일링 2 (0) | 2022.10.12 |
댓글