[백준 3052]나머지
문제
두 자연수 A와 B가 있을 때, A%B는 A를 B로 나눈 나머지 이다. 예를 들어, 7, 14, 27, 38을 3으로 나눈 나머지는 1, 2, 0, 2이다.
수 10개를 입력받은 뒤, 이를 42로 나눈 나머지를 구한다. 그 다음 서로 다른 값이 몇 개 있는지 출력하는 프로그램을 작성하시오.
내 풀이
나는 배열안에서 탐색으로 해결하려했는데 boolean 배열에 담아서
true 값일때만 카운트하는게 너무 신박하다 . . . 어떻게 이런 생각을 하지
무릎을 탁 치는 코드
class Main
{
public static void main (String[] args) throws java.lang.Exception
{
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
boolean[] arr = new boolean[42];
int count = 0;
for(int i=0; i<10; i++){
arr[Integer.parseInt(bf.readLine())%42] = true;
}
for(boolean value : arr){
if(value){
count++;
}
}
System.out.println(count);
}
}