안녕 세상아,

[프로그래머스/c++] Lv1 추억 점수 본문

프로그래머스

[프로그래머스/c++] Lv1 추억 점수

돈 많은 백수가 되고싶다 2024. 9. 27. 15:55

https://school.programmers.co.kr/learn/courses/30/lessons/176963

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

3중 for문을 사용해서 풀었다. 

for문을 돌려가면서 만약 photo[i][j]가 name[k]와 같으면 해당 추억 점수 더하도록 한다. 

#include <string>
#include <vector>

using namespace std;

vector<int> solution(vector<string> name, vector<int> yearning, vector<vector<string>> photo) {
    vector<int> answer;

    for (int i = 0; i < photo.size(); i++) {
        int n = 0;
        for (int j = 0; j < photo[i].size(); j++) {
            for (int k = 0; k < name.size(); k++) {
                if (photo[i][j] == name[k]) {
                    n += yearning[k];
                }
            }
        }
        answer.push_back(n);
    }

    return answer;
}

 

우선 2차원 벡터 문제 풀었다는게 좀 뿌듯하고, 이게 되네...? 하면서 풀었던...

숫자 조금만 더 커져도 3중 for문이 되려나...? 시간 초과될까봐 굉장히 쫄렸다,,ㅋㅋㅋ