ALGORITHM
백준 9375 패션왕 신해빈 (Java)
공부하는_다온
2023. 3. 30. 22:39
1. 문제 링크
9375번: 패션왕 신해빈
첫 번째 테스트 케이스는 headgear에 해당하는 의상이 hat, turban이며 eyewear에 해당하는 의상이 sunglasses이므로 (hat), (turban), (sunglasses), (hat,sunglasses), (turban,sunglasses)로 총 5가지 이다.
www.acmicpc.net
2. 문제 및 입출력예제
3. 문제 풀이
입력 받을 때 종류별로 담는데 Map에 종류와 그 종류에 몇개가 있는지 넣는다.
중복이 없다고 했기 때문에 숫자만 세도 괜찮다.
모든 입력을 받은 후 종류별로 개수를 곱하면 되는데, 안 하는 경우도 생각해서 +1한 값을 곱한다.
그리고 아무것도 입지 않은 상태인 경우인 하나를 빼면 끝이다.
4. 코드
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;
public class Main {
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int T = Integer.parseInt(br.readLine());
String[] split = new String[2];
for(int t=0;t<T;t++) {
int N = Integer.parseInt(br.readLine()); //의상 수
HashMap<String, Integer> map = new HashMap<>();
for(int i=0;i<N;i++) {
split = br.readLine().split(" ");
String str = split[1];
if(map.containsKey(str)) {
map.put(str, map.get(str)+1);
}
else {
map.put(str, 1);
}
}
int result = 1;
for(int i : map.values()){
result*= i+1 ;
}
System.out.println(result-1);
}
System.out.println(sb);
}
}