
문제 설명
https://www.acmicpc.net/problem/2577
2577번: 숫자의 개수
첫째 줄에 A, 둘째 줄에 B, 셋째 줄에 C가 주어진다. A, B, C는 모두 100보다 크거나 같고, 1,000보다 작은 자연수이다.
www.acmicpc.net
세 개의 자연수 a, b, c를 곱하여 나온 결과에 0 ~ 9까지의 숫자가 각각 몇 번씩 쓰였는지 구하기
문제 풀이법
세 개의 자연수는 각각 100 ~ 999의 범위를 가지고 있다
따라서 이 3개의 수를 곱하면 int형의 범위는 넘을 것이므로 충분히 long long형을 선언하여 a * b * c 값을 넣어줌
10씩 나누면서 각 숫자가 몇번 나왔는지 배열에 저장 후 출력
소스 코드
#include <iostream>
using namespace std;
int main()
{
int a, b, c;
long long num;
int arr[10] = { 0 };
cin >> a >> b >> c;
num = a * b * c;
while (num > 10)
{
arr[num % 10]++;
num /= 10;
}
arr[num]++;
for (int i = 0; i < 10; i++)
{
printf("%d\n", arr[i]);
}
return 0;
}
'Algorithm Study' 카테고리의 다른 글
[백준] 2566 최댓값 (0) | 2023.01.06 |
---|---|
[백준] 1475 방 번호 (0) | 2023.01.06 |
[백준] 10808 알파벳 개수 (0) | 2023.01.06 |
[프로그래머스] 1단계 - 문자열 내 마음대로 정렬하기 (0) | 2023.01.05 |
[프로그래머스] 1단계 - [1차] 비밀지도.cpp (0) | 2023.01.05 |