문제
풀이
입력받은 세 수를 곱하고, 곱한 숫자 중 0~9까지 숫자가 각각 몇개씩 있는지를 출력하는 문제입니다. 0~9까지 숫자가 몇번 나왔는지 카운트하기 위해 크기가 10인 배열을 생성해주고 배열의 0번째는 0의 개수, 1번째는 1의 개수... 이런식으로 카운트를 해주면 됩니다. 또 각 자리가 어떤 수인지를 알기위해 %(Modulo) 연산자를 사용하여 풀이를 진행하였습니다.
소스코드
#include <iostream>
using namespace std;
int main()
{
int array[10]={0,};
int a,b,c,value,num;
cin >>a>>b>>c;
value=a*b*c;
while(1){
num = value%10;
array[num]++;
value= value/10;
if(value==0) break;
}
for (int i = 0; i < 10; i++)
{
cout << array[i] <<'\n';
}
}
'Algorithm > Python, C++' 카테고리의 다른 글
백준 4344_평균은 넘겠지[C++] (0) | 2022.01.17 |
---|---|
백준 3052_나머지[C++] (0) | 2022.01.17 |
백준 2562_최댓값[C++] (0) | 2022.01.17 |
백준 1546_평균[C++] (0) | 2022.01.16 |
백준 10952_A+B - 5[C++] (0) | 2022.01.15 |
댓글