백준코딩테스트

[백준 3052] 나머지

초보개발자 신씨 2022. 11. 1. 00:43
반응형

 

3052번: 나머지

각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다.

www.acmicpc.net

풀이

더보기

1) 배열을 통한 풀이

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        int[] arr = new int[42];

        for (int i = 0 ; i < 10 ; i++){
            arr[sc.nextInt()%42]++;
        }

        int count = 0;
        for (int i = 0 ; i < 42 ; i++){
            if (arr[i] > 0){
                count++;
            }
        }
        System.out.println(count);

    }
}

 

2) HashSet을 이용한 풀이

HashSet : 중복을 허용하지 않고, List등과 다르게 입력순서 보장X 클래스

import java.util.HashSet;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        HashSet<Integer> hs = new HashSet<Integer>();

        for (int i = 0 ; i < 10  ; i++){
            hs.add(sc.nextInt()%42);
        }

        System.out.println(hs.size());
    }
}
반응형