본문으로 바로가기

[풀이 - Game of Thrones - I] : <Easy / 93.44%>

더보기
string gameOfThrones(string s)
{
    const int keyCount = 26;
    map<int, int> m;
    for(int i = 0; i < s.length(); ++i)
        ++m[s[i]-'a'];
    //
    bool notPair = false;
    for(int i = 0; i < keyCount; ++i)
    {
        if(m[i] % 2 != 0 && notPair == false)
        {
            notPair = true;
            continue;
        }
        //
        if(m[i] % 2 != 0 && notPair == true)
        {
            return "NO";
        }
    }
    //
    return "YES";
}

 


[풀이 - String Construction] : <Easy / 94.94%>

더보기
int stringConstruction(string s)
{
    int result = 0;
    //
    string cons;
    for(int i = 0; i < s.length(); ++i)
    {
        char c = s[i];
        //
        if(cons.find(c) == -1)
            ++result;
        //
        cons += c;
    }
    //
    return result;
}

 


[풀이 - Ice Cream Parlor] : <Easy / 92.78%>

더보기
vector<int> icecreamParlor(int m, vector<int> arr)
{
    vector<int> result;
    //
    int count = arr.size();
    //
    for(int i = 0; i < count; ++i)
    {
        for(int j = i+1; j < count; ++j)
        {
            if(arr[i] + arr[j] == m)
            {
                result.push_back(i+1);
                result.push_back(j+1);
                return result;
            }
        }
    }
    //
    return result;
}

 


[풀이 - Missing Numbers] : <Easy / 83.17%>

더보기
vector<int> missingNumbers(vector<int> arr, vector<int> brr)
{
    vector<int> result;
    //
    map<int, int> m1;
    map<int, int> m2;
    //
    for(int i = 0 ; i < arr.size(); ++i)
        ++m1[arr[i]];
    for(int i = 0 ; i < brr.size(); ++i)
        ++m2[brr[i]];
    //
    auto i = m2.begin(), e = m2.end();
    for(; i != e; ++i)
    {
        int key = i->first;
        int value = i->second;
        //
        if(m1[key] != value)
            result.push_back(key);
    }
    //
    return result;
}