백준/1차원 배열

3052: 나머지 / C++

Koalitsiya 2023. 3. 8. 12:25

문제 설명

수 10개를 입력받아 42로 나눈 나머지를 구한 뒤, 서로 다른 값이 몇 개 있는지 출력하는 프로그램을 작성

 

풀이

42 크기의 배열을 선언하고 0으로 초기화 해준 뒤 수 10개를 입력받아 해당 수를 42로 나눈 나머지를 인덱스로 가지는 인덱스의 값을 증가시킨다.

이후 배열을 순회하며 인덱스의 값이 0이 아닌 경우 count를 증가시킨다.

#include <iostream>

using namespace std;

int main() {
	int num;
	int count = 0;
	int arr[42] = { 0 };

	for (int i = 0; i < 10; i++) {
		cin >> num;
		
		arr[num % 42]++;
	}

	for (int i = 0; i < 42; i++)
		if (arr[i] != 0) count++;

	cout << count;

	return 0;
}