본문 바로가기
프로그래밍/백준 문제 풀이(자바)

백준 자바 나머지 답/해설(3052번 문제)

by 리드민 2021. 11. 3.
반응형

[1] 백준 카테고리
단계별로 풀어보기

1차원 배열

4단계 3052번 문제

나머지

링크

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

 

3052번: 나머지

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

www.acmicpc.net

 

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

3. 예제 입력 1
첫째 줄부터 열번째 줄 까지 숫자가 한 줄에 하나씩 주어진다. 이 숫자는 1,000보다 작거나 같고, 음이 아닌 정수이다.

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


 

5. 예제 입력 1

1
2
3
4
5
6
7
8
9
10

 

6. 예제 출력 1

10

 

7. 예제 입력 2

42
84
252
420
840
126
42
84
420
126

 

8. 예제 출력 2

1

 

9. 예제 입력 3

39
40
41
42
43
44
82
83
84
85

 

10. 예제 출력 3

6

 

[3] 정답

1. 정답 해설 포함

 

 

2. 정답 해설 미포함

package test_p1;
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);

		int[] arr = new int[10];
		boolean b;
		int effort = 0;

		for(int i=0; i<10; i++ ) {
			arr[i] = sc.nextInt() % 42;
		}
		for(int i=0; i<10; i++ ) {
			b = false;
			for(int k=i+1; k<10; k++ ) {
				if( arr[i] == arr[k] ) {
					b = true;
					break;
				}
			}
			if( b == false ) {
				effort ++;
			}
		}
		sc.close();
		System.out.println(effort);
	}
}
반응형