본문 바로가기
코딩테스트/백준

JAVA 백준 3052번 나머지

by 광고(주) 2022. 5. 1.
반응형

문제

두 자연수 A와 B가 있을 때, A%B는 A를 B로 나눈 나머지 이다. 예를 들어, 7, 14, 27, 38을 3으로 나눈 나머지는 1, 2, 0, 2이다.
수 10개를 입력받은 뒤, 이를 42로 나눈 나머지를 구한다. 그 다음 서로 다른 값이 몇 개 있는지 출력하는 프로그램을 작성하시오.

입력

첫째 줄부터 열번째 줄 까지 숫자가 한 줄에 하나씩 주어진다. 이 숫자는 1,000보다 작거나 같고, 음이 아닌 정수이다.
1
2
3
4
5
6
7
8
9
10

출력

첫째 줄에, 42로 나누었을 때, 서로 다른 나머지가 몇 개 있는지 출력한다.
10

알고리즘 분류

사칙연산(arithmetic), 수학(math)

소스코드

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.HashSet;
import java.util.Set;

public class Main {
    public static void main(String args[]) throws IOException {
        BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

        int A = 0;
        int B = 42;        
        Set<Integer> st = new HashSet<>();
        for(int i=0; i<10; i++) {
            A = Integer.parseInt(bf.readLine());            
            st.add(A%B);
        }
        bw.write(st.size() + "\n");

        bw.flush();
        bw.close();
    }
}
반응형

'코딩테스트 > 백준' 카테고리의 다른 글

JAVA 백준 8958번 OX퀴즈  (0) 2022.05.01
JAVA 백준 1546번 평균  (0) 2022.05.01
JAVA 백준 2577번 숫자의 개수  (0) 2022.05.01
JAVA 백준 2562번 최댓값  (0) 2022.05.01
JAVA 백준 10818번 최소, 최대  (0) 2022.05.01

댓글