5AMSUNG

[groom] 카드모으기 본문

Java

[groom] 카드모으기

짝구이 2023. 5. 10. 23:11
반응형

코딩테스트 난이도 easy, 1단계 수준에서는 Set 을 이용해서 푸는 방법이 많이 나오는것 같은데..

중복 안되고 순서 따질 필요 없고..set 이지.. 머.. 풀어보잣

 

문제는 아래와 같다. 

문제


 Set은 List와는 다르게 객체(데이터)를 중복해서 저장할 수 없다. 또한 저장된 객체(데이터)를 인덱스로 관리하지 않기 때문에 저장 순서가 보장되지 않는다. Set 컬렉션을 구현하는 대표적인 클래스들은 HashSet, TreeSet, LinkedHashSet 등이 있다. 

Set - HashSet, TreeSet, LinkedHashSet

package groom;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.HashSet;
import java.util.Set;
import java.util.StringTokenizer;

public class CardCollect {

    public static void main(String[] args) throws Exception {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String input = br.readLine();

        StringTokenizer stringTokenizer = new StringTokenizer(input);

        int n = Integer.parseInt(stringTokenizer.nextToken());
        int m = Integer.parseInt(stringTokenizer.nextToken());

        Set<String> stringHashSet = new HashSet<>();

        int i = 0;
        int ret = -1;
        while (true) {
            i++;
            String num = br.readLine();
            stringHashSet.add(num);
            if (stringHashSet.size() == n) {
                ret = i ;
                break;
            }
            if(i == m) {
                break;
            }
        }
        System.out.println(ret);
    }
}

결과를 안넣었네 통과 했었나??

 

반응형

'Java' 카테고리의 다른 글

[codility] AbsDistinct  (0) 2023.05.19
[codilty] MaxProfit  (1) 2023.05.16
[java] 쓰레드 세이프(Thread Safe)  (0) 2023.05.08
[java] File  (0) 2023.03.18
[TEST]ReflectionTestUtils  (0) 2023.03.14