반응형
알고리즘 종류
구현
사고 과정
next_permutation으로 해결하면 너무 쉽게 해결할 수 있다는 것을 알았습니다. next_permutation을 이용하면 순열을 쉽게 구할 수 있습니다.
이 문제의 경우 순열에서 2번째로 생성된 것을 출력하면 됩니다. 1번째는 자기 자신입니다.
구현(C++)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int n;
int main(void){
ios_base::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
cin >> n;
while(n--){
string str, ans;
int cnt = 0;
cin >> str;
do{
ans = str;
if(++cnt == 2) break;
}while(next_permutation(str.begin(), str.end()));
cout << ans << "\n";
}
}
|
cs |
반응형
'코딩 공부 > 백준' 카테고리의 다른 글
[백준][C++] 11000 강의실 배정 (0) | 2021.04.21 |
---|---|
[백준][C++] 1918 후위 표기식 (0) | 2021.04.20 |
[백준][C++] 18119 단어 암기 (0) | 2021.04.20 |
[백준][C++] 1062 가르침 (0) | 2021.04.19 |
[백준][C++] 1941 소문난 칠공주 (0) | 2021.04.19 |