[백준] 패션왕 신해빈

jun·2021년 4월 7일
0
post-thumbnail

유의할점

풀이

옷의 종류 / 각 종류에 해당하는 개수가 중요하다.

예를 들어 옷의 종류가 2가지이고 각각 2개 1개를 가지고 있다면, 만들수있는 조합의 수는 아무것도 안입는 수를 각각 포함해서 (2+1) * (1+1) = 6 이된다. 여기서 아무것도 안입는 경우의 수 1을 뺀다.

즉 (각 종류의 개수 + 1)의 모든합 - 1이 답이된다.

코드

C++

#include <iostream>
#include <map>
#include <string>

using namespace std;

int main() {
	int C;
	cin >> C;
	while (C--) {
		int N;
		cin >> N;
		map <string, int> mp;
		while (N--) {
			string a, b;
			cin >> a >> b;
			mp[b]++;
		}
		int res = 1;
		for (auto i : mp)
			res *= (i.second + 1);
		cout << res - 1 << "\n";
	}
}
profile
Computer Science / Algorithm / Project / TIL

0개의 댓글