자라는 개발자/문제풀이

백준 c++ 11497 통나무 건너뛰기

자란다 2022. 3. 16. 20:37
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