공부공간

BOJ - 9375 ) 패션왕 신해빈 본문

알고리즘/구현,시뮬

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());
	}
}

'알고리즘 > 구현,시뮬' 카테고리의 다른 글

BOJ - 21608 ) 상어 초등학교  (2) 2022.04.20
BOJ - 1780 ) 종이의 개수  (0) 2022.03.09
BOJ - 5430 ) AC  (0) 2022.03.06
BOJ - 17219 ) 비밀번호찾기  (0) 2022.03.04
BOJ - 1676 ) 팩토리얼 0의 개수  (0) 2022.03.03
Comments