ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • C# 25757 - 임스와 함께하는 미니게임
    백준 2024. 2. 19. 12:46
    반응형

    문제

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

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

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

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

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

    입력

    첫 번째 줄에는 사람들이 임스와 같이 플레이하기를 신청한 횟수 과 같이 플레이할 게임의 종류가 주어진다. (1≤N≤100000)

    두 번째 줄부터 개의 줄에는 같이 플레이하고자 하는 사람들의 이름이 문자열로 주어진다. (1≤ 문자열 길이 ≤20

    사람들의 이름은 숫자 또는 영문 대소문자로 구성되어 있다.

    출력

    임스가 최대로 몇 번이나 게임을 플레이할 수 있는지 구하시오.


    [정답]

    string[] input = Console.ReadLine().Split();
    int n = int.Parse(input[0]);
    string gameType = input[1];
    
    int me = 1;
    int count = 0;
    
    // 중복 요소 없는 자료구조
    HashSet<string> nameHashList = new HashSet<string>(); 
    
    // 참가자 >> HashSet 추가
    for(int i = 0; i < n; i++)
    {
        string inputName = Console.ReadLine();
        nameHashList.Add(inputName);
    }
    
    // 게임 타입
    switch (gameType)
    {
        // 윷놀이 2명이서 플레이 >> 참가하는 모든 인원 수
        case "Y":
            count = nameHashList.Count;
            break;   
    
        // 같은 그림 찾기 3명이서 플레이 >> 참가하는 모든 인원 수 / 3 - 자신 , 인원 부족하면 게임 시작 X
        case "F":
            count = (nameHashList.Count / (3 - me));
            break;
    
        // 원카드 4명이서 플레이 >> 참가하는 모든 인원 수 / 4 - 자신, 인원 부족하면 게임 시작 X
        case "O":
            count = (nameHashList.Count / (4 - me));
            break;
    }
    
    // 출력
    Console.WriteLine(count);
    반응형

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

    C# 4659 - 비밀번호 발음하기  (0) 2024.02.05
    C# 7568 - 덩치  (0) 2024.02.02
    C# 8979 - 올림픽  (0) 2024.01.31
    C# 10431 - 줄세우기  (0) 2024.01.31
    C# 9655 - 돌 게임  (0) 2024.01.29
Designed by Tistory.