260303 TIL - 챕터3 팀프로젝트 마감 D-2

2026. 3. 3. 21:29언리얼 7기 본캠프

캠프에서 제공하는 코드카타 문제를 다 풀었고, 이제 분야별로 맞춰서 문제를 찾아보고 풀어보라는 조언이 있었음

 

그래서 지금까지 푼 문제들 목록을 AI에게 보여주고, 내 역량을 더 발전시키려면 어떤 문제를 풀어야하는지 목록을 받아서 더 높은 단계로 올라가보기로 함

 

오늘 받은 목록중에 신경쓰이는 문제가 있었는데... 코딩 문외한인 캠프 첫날 즈음에 프로그래머스를 처음 들어갔을 때 처음 봤던 문제가 있었음. 지금 수준에서는 풀 수 있는 문제였기에 풀어봤는데, 그때 당시에는 봐도 무슨 말인지 하나도 이해를 못했는데 지금은 풀어지기까지 한다니 그동안 많이 성장했음을 느낌

 

//전화번호 목록 문제. 크게 어렵지는 않았지만, 이전까지 모호하게 사용하고 있던 해시에 대해서
//좀 더 확실한 개념으로 이해하게 되었고 key와 value로 구분해서 저장한다는 개념도 익힘
//이번 문제는 key값만 필요하기 때문에 unordered_set을 사용함
#include <string>
#include <vector>
#include <unordered_set>

using namespace std;

bool solution(vector<string> phone_book) {
    bool answer = true;
    unordered_set<string> hash;
    for (const string& s : phone_book)
    {
        hash.insert(s);
    }
    
    for (const string& s : phone_book)
    {
        for(int i = 1; i < s.length(); i++)
        {
            string subs = s.substr(0,i);
            auto it = hash.find(subs);
            if (it != hash.end()) return false;
        }
    }
    return answer;
}

//오픈채팅방 문제. 이 문제가 프로그래머스를 가장 처음 방문했을 때 아무 생각없이 열어봤던 문제였음
//로직 자체는 간단한데, unordered_map과 stringstream을 활용해서 입력 문자열을 잘 파싱해서 저장하고 이를 통해
//결과물을 관리해야하는, 약간 신경을 좀 써야하는 문제였음
#include <string>
#include <vector>
#include <unordered_map>
#include <sstream>

using namespace std;

vector<string> solution(vector<string> record) {
    vector<string> answer;
    unordered_map<string, string> hashmap;
    for (const string& s : record)
    {
        stringstream ss(s);
        string act = "", uid = "", name = "";
        ss >> act >> uid >> name;
        if (act == "Enter") hashmap[uid] = name;
        else if (act == "Change") hashmap[uid] = name;
    }
    
    for (const string& s : record)
    {
        stringstream ss(s);
        string act = "", uid = "", name = "";
        ss >> act >> uid >> name;
        if (act == "Enter") answer.push_back(hashmap[uid] + "님이 들어왔습니다.");
        else if (act == "Leave") answer.push_back(hashmap[uid] + "님이 나갔습니다.");
    }
    return answer;
}

 

생각보다 주말이랑 휴일에 팀프로젝트 진전이 더디게 되어서, 일단 머지 후 오늘은 DataTable에서 맞는 에셋을 할당해주고 데이터를 정리하는 작업을 거침. 아직 맵도 덜 되고 아이템도 덜 되고 UI도 덜 되고 적도 덜 되고 캐릭터도 덜 되고 코어도 덜 되어서...

 

아마 내일 하루 정리하면서 정말 많이 힘들지도 모르겠다는 생각이 들었음