10974 모든 순열
C++
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
int n;
cin >> n;
vector<int> permutation(n); // 순열 저장
for (int i = 1; i <= n; i++)
permutation[i-1] = i;
do {
for (int i = 0; i < n; i++)
cout << permutation[i] << ' ';
cout << '\n';
} while (next_permutation(permutation.begin(), permutation.end()));
return 0;
}
ios_base::sync_with_stdio(0);
cin.tie(0);
C++의 입력과 출력이 시간 초과가 나는 것을 방지하기 위하여 위와 같은 코드를 추가한다.
또한 개행 문자 '\n'이 endl보다 빠르다는 점도 사소하지만 시간 초과 여부를 가를 수 있다.
'Algorithm > BOJ (백준)' 카테고리의 다른 글
[C++] 백준 11049 행렬 곱셈 순서 (0) | 2020.07.25 |
---|---|
[C++] 백준 11053 가장 긴 증가하는 부분 순열 (0) | 2020.07.25 |
[C++] 백준 9251 LCS (0) | 2020.07.24 |
[C] 백준 2748 피보나치 수 2 (0) | 2020.07.23 |
[C++] 백준 11726 2×n 타일링 (0) | 2020.07.23 |