Posts [알고리즘] 프로그래머스 - 위장
Post
Cancel

[알고리즘] 프로그래머스 - 위장


문제

위장


접근

의상의 종류들의 조합을 구해야한다.
딕셔너리를 사용하여 종류별로 카운트를 해주고, 조합을 구한다.
알몸으로 다닐 수는 없으니, 전체 조합에서 공집합을 빼준다.


코드

  • 파이썬 코드
1
2
3
4
5
6
7
8
9
10
def solution(clothes):
    answer = 1
    dic = {}
    for clothe in clothes:
        dic[clothe[1]] = dic.get(clothe[1], 0) + 1

    for value in dic.values():
        answer *= (value+1)
    answer -= 1
    return answer
  • C++ 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <string>
#include <vector>
#include <map>

using namespace std;

int solution(vector<vector<string>> clothes) {
    map<string, int> m;
    int answer = 1;
    for(int i = 0; i<clothes.size();i++){
        m[clothes[i][1]]++;
    }
    for(auto i = m.begin(); i != m.end(); i++){
        answer *= ((i->second) + 1);
    }
    answer--;
    return answer;
}


This post is licensed under CC BY 4.0 by the author.

[알고리즘] 프로그래머스 - 폰켓몬

[프로그래머스 인공지능스쿨] Week4-1 Flask