Notice
Recent Posts
Recent Comments
«   2024/12   »
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
29 30 31
Archives
Today
Total
관리 메뉴

블로그 언저리인 무언가

[백준/BOJ] 1342 행운의 문자열 본문

Programming/BOJ

[백준/BOJ] 1342 행운의 문자열

he1fire 2020. 9. 24. 20:31
728x90

문제 : 1342 행운의 문자열

 

1342번: 행운의 문자열

민식이와 준영이는 자기 방에서 문자열을 공부하고 있다. 민식이가 말하길 인접해 있는 모든 문자가 같지 않은 문자열을 행운의 문자열이라고 한다고 한다. 준영이는 문자열 S를 분석하기 시작�

www.acmicpc.net

어떤 문자열이 주어졌을 때 문자를 재배치해 인접한 문자가 같지 않은

문자열의 경우의 수를 구하는 문제이다.

문자열을 정렬한 후 next_permutation을 이용해

모든 경우의 수를 확인하면 된다.


Code

#include <bits/stdc++.h>
#define ll long long
using namespace std;
string S;
ll ans;
int main(){
    ios::sync_with_stdio(0);
    cin.tie(0);
    cin >> S;
    sort(S.begin(),S.end());
    do{
        ll tmp=0;
        for (int i=1;i<S.size()-1;i++){
            if (S[i-1]==S[i] || S[i]==S[i+1]){
                tmp=1;
                break;
            }
        }
        if (tmp)
            continue;
        ans++;
    }while(next_permutation(S.begin(),S.end()));
    cout << ans;
    return 0;
}
728x90

'Programming > BOJ' 카테고리의 다른 글

[백준/BOJ] 17953 디저트  (0) 2020.09.25
[백준/BOJ] 15724 주지수  (0) 2020.09.24
[백준/BOJ] 14499 주사위 굴리기  (0) 2020.09.23
[백준/BOJ] 4811 알약  (0) 2020.09.22
[백준/BOJ] 13703 물벼룩의 생존 확률  (0) 2020.09.22
Comments