PS/Baekjoon Online Judge

[백준 9375] 패션왕 신해빈 [C++]

kimyoungrok 2021. 8. 14. 15:42

백준 - 9375


풀이

의상의 종류별로 개수를 세고, 의상을 입어볼 수 있는 모든 경우에서, 모든 의상을 다 입은 경우만 빼면 된다.


소스코드

#include <iostream>
#include <string>
#include <map>
using namespace std;
int main(){
	int T, n;
	cin >> T;
	while (T--){
		cin >> n;
		map<string, int> info;
		map<string, int>::iterator  iter;
		string name, kinds;
		
		while (n--){
			cin >> name >> kinds;
			if (info[kinds]) info[kinds]++;
			else info[kinds] = 1;
		}
        
		int result = 1;
		for (iter = info.begin(); iter != info.end(); iter++)
			result *= (iter->second + 1);
		cout << result - 1 << '\n';
	}
}

출처

 

9375번: 패션왕 신해빈

첫 번째 테스트 케이스는 headgear에 해당하는 의상이 hat, turban이며 eyewear에 해당하는 의상이 sunglasses이므로   (hat), (turban), (sunglasses), (hat,sunglasses), (turban,sunglasses)로 총 5가지 이다.

www.acmicpc.net

'PS > Baekjoon Online Judge' 카테고리의 다른 글

[백준 1644] 소수의 연속합 [C]  (0) 2021.08.15
[백준 1300] K번째 수 [C]  (0) 2021.08.14
[백준 2667] 단지번호붙이기 [C]  (0) 2021.08.14
[백준 2234] 성곽 [C]  (0) 2021.08.14
[백준 1094] 막대기 [C]  (0) 2021.08.14