Notice
Recent Posts
Link
- Today
- Total
hye-log
[백준]3052번 나머지(JAVA) 본문
0. 문제 링크
https://www.acmicpc.net/problem/3052
3052번: 나머지
각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다.
www.acmicpc.net
1. 문제 설명
1) 주어진 10개의 숫자를 42로 나눈 나머지 중 서로 다른 값이 몇 개인지 출력하기
2. 입출력
// input
42
84
252
420
840
126
42
84
420
126
// output
1
3. 코드
import java.io.*;
import java.util.*;
public class b3052 {
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
HashSet<Integer> set = new HashSet<>(); // 중복 없이 저장할 수 있는 set 이용
for (int i = 0; i < 10; i++) {
int n = Integer.parseInt(br.readLine()); // 숫자 입력 받기
set.add(n % 42); // 42로 나눈 나머지 set에 저장
}
System.out.println(set.size()); // set의 크기 출력
}
}
실행 결과
4. 회고
1) 서로 다른 나머지의 개수를 찾아야 하므로 HashSet 활용
2) 입력 받은 숫자를 배열 등에 저장하지 않고 변수로 처리하기 (메모리 절약)
5. Github
https://github.com/iihye/Algorithm/blob/main/Baekjoon/b3052.java
728x90
'CodingTest > Baekjoon' 카테고리의 다른 글
[백준]10250번 ACM 호텔(JAVA) (0) | 2023.08.13 |
---|---|
[백준]8958번 OX퀴즈(JAVA) (0) | 2023.08.13 |
[백준]2920번 음계(JAVA) (0) | 2023.08.13 |
[백준]11720번 숫자의 합(JAVA) (0) | 2023.08.13 |
[백준]2675번 문자열 반복(JAVA) (0) | 2023.08.13 |
Comments