[백준] 2577번: 숫자의 개수
Coding/Basic

[백준] 2577번: 숫자의 개수

백준 2755번: 숫자의 개수(문제링크)

문제에서 파악해야 할 핵심요소 및 마인드맵

  • 긴 숫자의 숫자하나하나를 어떻게 받을 것인가?
  • 0~9까지의 숫자를 어떻게 적립시킬 수 있는가?

주의사항

  • 숫자를 char형 배열로 만들어주는 stdio.h의 sprintf 함수를 이용한다.
  • string의 길이를 알려주는 strlen 함수는 string.h를 이용한다.
#include <stdio.h>
#include <string.h> //strlen을 위한 import

int main(void)	{
    int a, b, c;
    int cnt[10] = { 0 };	//0~9 개수를 적립할 리스트
    int sum;
    char temp[100];			//긴 숫자를 담을 배열 준비
    int i;
    scanf("%d %d %d", &a, &b, &c);
    sum = a*b*c;
    
    sprintf(temp, "%d",sum);	//긴 숫자를 담은 char형 배열
    for (i = 0;i < strlen(temp);i++)
        cnt[temp[i]-'0']++;		//아스키 코드를 이용하여 추가
        
    for (i=0;i<10;i++)
        printf("%d\n",cnt[i]);
    return -1;
}