알고리즘/백준
[JAVA-3052] 나머지
썬키
2023. 1. 15. 20:15
3052번: 나머지
각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다.
www.acmicpc.net
링크를 클릭하면 해당 문제로 이동합니다.
1. 접근하기
정수 10개를 입력 받고 42로 나눈 나머지들을 새로운 배열에 담은 뒤, 중복된 값을 제거하고 후에
배열의 길이를 구해주면 답이 되겠다고 생각했다.
TO-DO |
1) 정수 10개를 담을 배열을 준비한다. |
2) 배열의 원소들을 42로 나눈 나머지 값들을 새로운 배열에 담는다. |
3) 단, 나머지 값이 같은 원소들은 넣지 않는다. |
2. 코드
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner scanner = new Scanner(System.in);
int count = 0;
int[] iArr = new int[10];
for (int i = 0; i < iArr.length; i++) {
iArr[i] = scanner.nextInt();
}
List<Integer> iList = new ArrayList<Integer>();
for (int i : iArr) {
if (!iList.contains(i % 42)) {
iList.add(i % 42);
}
}
System.out.println(iList.size());
}
}
필자는 42로 나눈 나머지 값들을 ArrayList 객체에 담기로 했다.
단, ArrayList 안에 중복된 값이 있으면 넣지 않도록 조건문을 걸어주고
size()를 통해 서로 다른 나머지가 몇 개 존재하는지 출력하였다.