알고리즘/구현,시뮬
BOJ - 9375 ) 패션왕 신해빈
개발자가될수있을까?
2022. 3. 7. 20:45


https://www.acmicpc.net/problem/9375
9375번: 패션왕 신해빈
첫 번째 테스트 케이스는 headgear에 해당하는 의상이 hat, turban이며 eyewear에 해당하는 의상이 sunglasses이므로 (hat), (turban), (sunglasses), (hat,sunglasses), (turban,sunglasses)로 총 5가지 이다.
www.acmicpc.net
n0가지와 n1,n2,n3 ... nn가지있을때에 (n0+1)*(n1+1)*(n2+1)*...(nn+1) 가지에서
아무것도 걸치지않은 한가지를 빼주자.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
StringBuilder sb = new StringBuilder();
int T = Integer.parseInt(st.nextToken());
for(int tt=0;tt<T;tt++) {
int n = Integer.parseInt(br.readLine());
HashMap<String, Integer> hm = new HashMap<>();
int answer =1;
for(int i=0;i<n;i++) {
st = new StringTokenizer(br.readLine());
String str1 = st.nextToken();
String str2 = st.nextToken();
if(hm.getOrDefault(str2, 0)==0) {
hm.put(str2, 1);
} else {
hm.put(str2, hm.get(str2)+1);
}
}
for ( String key : hm.keySet() ) {
answer*=(hm.get(key)+1);
}
sb.append(answer-1).append("\n");
}
System.out.println(sb.toString());
}
}
