반응형
조합문제였습니다.
next_permutation은 다음 수열이 있다면 다음 수열로 바꿔준다음 true를 반환합니다. 만약 현재 vector가 마지막 수열이라면 false를 반환합니다.
풀이방법
next_permutation이 false라면 -1를 출력해줍니다.
그 외에는 다음 수열을 출력해줍니다.
Code
#include <bits/stdc++.h>
using namespace std;
int n;
int main(){
cin >> n;
vector <int> v(n);
for(auto &n : v) cin >> n;
if(!next_permutation(v.begin(),v.end())) cout << -1 << '\n';
else for(auto &n : v) cout << n << ' ';
}
'Algorithm > Math' 카테고리의 다른 글
(C++) - 프로그래머스(Summer/Winter Coding(~2018)) : 점프와 순간이동 (0) | 2021.05.16 |
---|---|
(C++) - 백준(BOJ) 2407번 : 조합 (3) | 2021.05.02 |
(C++) - 백준(BOJ) 16479번 : 컵라면 측정하기 (0) | 2021.05.02 |
(C++) - 백준(BOJ) 1748번 : 수 이어 쓰기 1 (0) | 2021.04.21 |
(C++) - 프로그래머스(연습문제) : 최솟값 만들기 (0) | 2021.04.04 |