헝D의 일기장
article thumbnail

https://www.acmicpc.net/problem/25757

 

25757번: 임스와 함께하는 미니게임

첫 번째 줄에는 임스와 함께 플레이할 사람의 수 $N$과 같이 플레이할 게임의 종류가 주어진다. $(1 \le N \le 100\,000)$ 두 번째 줄부터 $N$개의 줄에는 같이 플레이하고자 하는 사람들의 이름이 문자

www.acmicpc.net

나의풀이

import java.util.*;
import java.io.*;
public class Main {
    public static void main(String args[]) throws Exception{
        int answer=0;
        BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out));
        StringTokenizer st=new StringTokenizer(br.readLine());
        int n=Integer.parseInt(st.nextToken());
        char game=st.nextToken().charAt(0);
        
        Set<String> set=new HashSet<>();//중복 방지를 위해 set 선언 
        
        for(int i=0;i<n;i++){
            set.add(br.readLine());
        }
        if(game =='Y'){
            answer=(int)set.size()/1;
        }else if(game == 'F'){
            answer=(int)set.size()/2;

        }else if(game == 'O'){
            answer=(int)set.size()/3;

        }
        
        bw.write(Integer.toString(answer));
        bw.close();
      
    }
}

Tip

Set: 저장 순서 유지하지 않고 중복 값 허용하지 않음. (순서 유지를 원하면 LinkedHashSet쓰기)

삽입: set.add("a")

삭제: set.remove("a")

출력: set.toString() or 이터레이터 사용 

값 포함 유무: set.contains("a")

전체 삭제: set.clear()

값 존재 유무: set.isEmpty()

데이터 크기: set.size();

profile

헝D의 일기장

@헝D

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!