[BOJ] (b2) 3052_나머지

강신현·2022년 1월 28일

문제 링크

입력 받은 수(10개)를 42로 나눈 나머지를 배열에 저장
배열에 들어갈 수 있는 수는 0 ~ 41

✅ 배열 초기화 방법

배열 초기화 포스트

try1

10번의 반복문으로 42로 나눈 나머지를 배열에 저장 -> 배열의 총 크기는 10
이후, 서로 다른 값들을 다른 배열에 저장하여 배열의 총 크기를 구한다
-> 수행할 알고리즘이 많아짐

try2

10번의 반복문으로 42로 나눈 나머지와 일치하는 배열 인덱스에 저장 -> 배열의 총 크기는 42
중복된 수는 같은 인덱스로 들어가므로 따로 서로 다른 값들을 판별할 필요가 없음

#include <iostream>

using namespace std;

int main(){

    int num, arr[42], sum=0;

    fill_n(arr,42,0);

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

    for(int i=0;i<42;i++){
        if(arr[i]==1) sum++;
    }

    cout << sum << endl;
    

    return 0;
}
profile
땅콩의 모험 (server)

0개의 댓글