반응형
https://www.acmicpc.net/problem/9375
위의 문제는 BaekJoon Online Judge의 단계별로 풀어보기 중 16단계
수학3의 카테고리에 포함되어 있는 문제이다.
경우의 수 문제이면서 JAVA의 Hashmap을 이용하여 문제를 해결한다.
공식은 옷의 이름에 상관없이 옷의 종류의 개수만 보면 경우의 수를 계산할 수 있다.
예) 하의 2벌, 상의1벌, 신발 3켤레 : (2+1)*(1+1)*(3+1)-1 = 23가지
import java.util.Scanner;
import java.util.HashMap;
public class Question_9375 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int Test_Case = sc.nextInt();
for(int Test = 0; Test < Test_Case; Test++) {
HashMap<String, Integer> Clothes = new HashMap<>();
int Number = sc.nextInt();
for(int i = 0; i < Number; i++) {
String Name = sc.next();
String Kind = sc.next();
if(Clothes.containsKey(Kind)) {
Clothes.put(Kind, Clothes.get(Kind) + 1);
} else {
Clothes.put(Kind, 1);
}
}
int Result = 1;
for(int val : Clothes.values()) {
Result *= val + 1;
}
System.out.println(Result - 1);
}
}
}
반응형
'BaekJoon' 카테고리의 다른 글
[백준] 15652번 : N과 M (4)(JAVA) (0) | 2019.12.06 |
---|---|
[백준] 1932번 : 정수 삼각형(JAVA) (0) | 2019.12.06 |
[백준] 1149번 : RGB거리(JAVA) (0) | 2019.12.04 |
[백준] 15651번 N과 M (3)(JAVA) (0) | 2019.12.04 |
[백준] 15650번 : N과 M (2)(JAVA) (0) | 2019.12.04 |
댓글