공부/알고리즘

HackerRank Bigger is Greater c++ solution

토고미 2021. 9. 7. 23:09
#include <vector>
#include <algorithm>

using namespace std;

string biggerIsGreater(string w) {
    vector<char> V;
    
    for(auto s : w)
        V.push_back(s);
        
    do{
        string temp="";
        for(auto v : V)
            temp += v;
            
        if( temp > w ){
            return temp;
        }
        
    }while(next_permutation(V.begin(), V.end()));
    
    return "no answer";
}

vector에 주어진 문자열을 char로 쪼개어 넣고,

next_permutation을 이용하여 다음 크기의 문자열을 얻어서

원 string과 비교하면 된다.