728x90
반응형
11497 통나무 건너뛰기
문제풀이
#include <iostream>
#include <vector>
#include <algorithm>
#include <math.h>
using namespace std;
vector<int> v;
vector<int> res;
int main()
{
int t,n;
cin >> t;
while(t--)
{
int min_value=0;
cin >> n;
for(int i=0;i<n;i++)
{
int a;
cin >> a;
v.push_back(a);
}
sort(v.begin(),v.end());
for(int i=0;i<n;i++)
{
if(i%2==0)
res.push_back(v[i]);
}
for(int i=n-1;i>0;i--)
{
if(i%2==1)
res.push_back(v[i]);
}
for(int i=1;i<n;i++)
{
int tmp = abs(res[i]-res[i-1]);
if(tmp >min_value)
min_value=tmp;
}
v.clear();
res.clear();
cout << min_value << "\n";
}
}
입력받은 숫자를 정렬한뒤 0,2,4 idx는 오름차순 3,1 idx는 내림차순으로 넣고 간격의 차이가 제일큰 값을 출력했다.
728x90
반응형
'자라는 개발자 > 문제풀이' 카테고리의 다른 글
백준 c++ 2212 센서 (0) | 2022.03.18 |
---|---|
백준 c++ 1758 알바생 강호 (0) | 2022.03.17 |
백준 c++ 17478 재귀함수가 뭔가요? (0) | 2022.03.16 |
백준 c++ 1292 쉽게 푸는 문제 (0) | 2022.03.14 |
백준 c++ 9625 BABBA (0) | 2022.03.13 |