문제링크 : https://www.acmicpc.net/problem/11536
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<int, int> pii;
const int MAX = INT_MAX;
int N;
string s;
vector<string>v;
vector<string>v1;
vector<string>v2;
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cin >> N;
for(int i=0; i<N; i++)
{
cin >> s;
v.push_back(s);
v1.push_back(s);
v2.push_back(s);
}
sort(v1.begin(), v1.end()); //오름차순
sort(v2.begin(), v2.end(), greater<>()); //내림차순
if(v == v1) cout << "INCREASING";
else if(v == v2) cout << "DECREASING";
else cout << "NEITHER";
return 0;
}
기본 문자열을 저장하는 벡터를 저장해두고,
해당 벡터를 기준으로 오름차순 정렬, 해당 벡터를 기준으로 내림차순 정렬을 해준다.
이후 원본 벡터와 정렬한 벡터들의 값을 비교해서 오름차순과 같다면 INCREASING을, 내림차순과 같다면 DECREASING을, 둘 모두 아니라면 NEITHER를 출력하게 된다.
'백준 > 실버' 카테고리의 다른 글
[백준 1485번] 정사각형 (C++) (0) | 2024.05.04 |
---|---|
[백준 2659번] 십자카드 문제 (C++) (0) | 2024.05.03 |
[백준 14729번] 칠무해 (C++) (0) | 2024.05.01 |
[백준 5648번] 역원소 정렬 (C++) (0) | 2024.04.30 |
[백준 2535번] 아시아 정보올림피아드 (C++) (0) | 2024.04.29 |