개발자/C or C++

[백준] 2577번

Mosser 2021. 10. 1. 15:45
728x90
반응형

해결 방법

이 문제는 값 A,B,C를 각각 받아서 세 수의 곱을 10으로 나누면서 나머지 값에 해당되는 배열의 count 값을 1씩 올리는 방식으로 풀 수 있습니다. 우선 배열을 10칸을 만들어야겠죠? 일의자리숫자는 0~9까지 가능하니까요!? 천천히 풀어보시면 쉽게 풀 수 있으실 겁니다.

소스코드

 

#include <iostream>
#include <stdio.h>
#include <vector>
using namespace std;

void getAnswer(vector<int> &arr, long value){

        while(value!=0){
                arr[value%10]++;
                value/=10;
        }
}

int main(){
        int A,B,C;
        vector<int> arr(10);

        scanf("%d",&A);
        scanf("%d",&B);
        scanf("%d",&C);

        getAnswer(arr,A*B*C);

        int i=0;
        for(i=0;i<10;i++){
                printf("%d\n",arr[i]);
        }

        return 0;
}
반응형