백준

[백준_25757] 임스와 함께하는 미니게임

빙수빈수 2023. 3. 24. 16:57

[문제]

임스가 미니게임을 같이할 사람을 찾고 있습니다.

플레이할 미니게임으로는 윷놀이 , 같은 그림 찾기 , 원카드 가 있습니다. 각각 2, 3, 4 명이서 플레이하는 게임이며 인원수가 부족하면 게임을 시작할 수 없습니다.

사람들이 임스와 같이 플레이하기를 신청한 횟수 과 임스가 플레이할 게임의 종류가 주어질 때, 최대 몇 번이나 임스와 함께 게임을 플레이할 수 있는지 구하시오.

임스와 여러 번 미니게임을 플레이하고자 하는 사람이 있으나, 임스는 한 번 같이 플레이한 사람과는 다시 플레이하지 않습니다.

임스와 함께 플레이하고자 하는 사람 중 동명이인은 존재하지 않습니다. 임스와 lms0806은 서로 다른 인물입니다.

 

[코드]

import java.util.*;

public class BaekJoon_25757 {

	public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
		char game=sc.next().charAt(0);
		
		// 중복 제거 위해 HashSet 사용
		HashSet<String> set=new HashSet<>();
		for(int i=0;i<n;i++)
			set.add(sc.next());
		
		int result=0;
		switch(game) {
		case 'Y': // 윷놀이
			result=set.size();
			break;
		
		case 'F': // 같은 그림 찾기
			result=set.size()/2;
			break;
		
		case 'O': // 원카드
			result=set.size()/3;
			break;
		}
		
		System.out.println(result);
	}

}

 

[고찰]

 이번 문제도 간단한 구현 문제였다. 신청한 사람의 중복을 제거해 주기 위해 HashSet을 사용했고, 중복을 제거한 실제 지원한 사람 수를(HashSet의 크기)를 각 게임의 플레이 인원수에서 무조건 게임에 참여하는 임스의 수를 뺀 1(윷놀이), 2(같은 그림 찾기), 3(원카드)로 나눠주면 결과값이 나온다.

'백준' 카테고리의 다른 글

[백준_1205번] 등수 구하기  (0) 2023.03.26
[백준_20125번] 쿠키의 신체 측정  (0) 2023.03.26
[백준_4659] 비밀번호 발음하기  (0) 2023.03.24
[백준_1697번] 숨바꼭질  (0) 2023.03.11
[백준_2667번] 단지번호 붙이기  (0) 2023.03.10