💻 현생/⛓ 알고리즘
[백준] 10973번 : 이전 순열
영이오
2021. 4. 14. 19:19
문제
풀이
[백준] 10972번 : 다음 순열
문제 풀이 myunji.tistory.com/19?category=1154147 [EPPER] 11회 6번 문제 풀이 접근을 잘못했던 문제. 하필이면 그 접근으로도 입력 예시는 전부 다 맞게 나와서 난 그게 맞는 줄 알았다. 근데 혹시나 하는 마.
myunji.tistory.com
이 문제의 반대 버전이다.
풀이도 반대로 하면 될테니까 그냥 이번에도 내장 함수를 써야겠다.
www.cplusplus.com/reference/algorithm/prev_permutation/?kw=prev_permutation
prev_permutation - C++ Reference
function template std::prev_permutation default (1)template bool prev_permutation (BidirectionalIterator first, BidirectionalIterator last ); custom (2)template bool prev_permutation (BidirectionalIterator first, BidirectionalIterator last, Com
www.cplusplus.com
소스코드
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
int N, input;
vector<int> arr;
cin >> N;
for (int i = 0; i < N; i++) {
cin >> input;
arr.push_back(input);
}
if (prev_permutation(arr.begin(), arr.end())) { //이전 순열이 있다면
for (int i = 0; i < N; i++)
cout << arr[i] << ' ';
} else //없다면
cout << -1;
}