반응형
수학적 사고의 중요성을 느끼게 해준 문제
난 더 잘할 수 있다. 이 문제를 통해서 많이 배웠다.
(각 옷의 종류의 갯수 + 1) 만큼씩 곱해주면 되는데
+ 1은, 해당 옷의 종류를 입지 않는 경우를 의미한다.
그럼 곱해진 모든 경우의 수 중에, 아무 옷도 입지 않는 경우가 한가지 들어가 있을 것이기에
마지막에 -1을 해주면 된다.
#include <string>
#include <vector>
#include <map>
#include <set>
#include <iostream>
using namespace std;
int solution(vector<vector<string>> clothes) {
int answer = 1;
map<string, int> m;
for(auto cloth : clothes) {
m[cloth[1]]++;
}
for(auto x : m) {
answer *= (x.second + 1);
}
return answer - 1; // 아무것도 안 입는 경우 포함되어있음
}
반응형
'[프로그래머스]' 카테고리의 다른 글
프로그래머스 기능개발 C++ (0) | 2023.08.17 |
---|---|
프로그래머스 전화번호 목록 C++ (0) | 2023.08.17 |
프로그래머스 더 맵게 C++ (0) | 2023.08.15 |
프로그래머스 가장 큰 수 C++ (0) | 2023.08.15 |
프로그래머스 소수 찾기 C++ (0) | 2023.08.14 |