-
[C언어] 백준 2577번 - 숫자의 개수CS/백준 BOJ 2020. 3. 21. 00:03
문제 링크
https://www.acmicpc.net/problem/2577
풀이
#include <stdio.h> int main() { int a, b, c; int arr[10] = {0, }; scanf("%d %d %d", &a, &b, &c); int n = a*b*c; int num; while(n>0) { num = n%10; arr[num]++; n /= 10; } for(int i=0; i<10; i++) { printf("%d\n", arr[i]); } return 0; }
정수를 자릿수에 따라 쪼개야할 때는 10으로 나눗셈/나머지연산을 하면 간단하게 처리할 수 있다.
배열 arr은 while문에서 값을 새로 할당하는 것이 아니라 원래 값을 증가시키기 때문에(증감 연산자 사용)
선언할 때 0으로 초기화를 해두어야한다.
배열 0으로 초기화하기 : https://dojang.io/mod/page/view.php?id=294
(C언어 코딩 도장 36.2 배열을 0으로 초기화하기)
'CS > 백준 BOJ' 카테고리의 다른 글
[프로그래머스] 소수 만들기 JavaScript (0) 2022.04.25 [C++] 백준 10808번 - 알파벳 개수 (0) 2020.07.02 [C++] 백준 4949번 - 균형잡힌 세상 (스택 응용) (0) 2020.06.28 [C++] 백준 10828번 - 스택 (스택 구현하기) (0) 2020.06.28 [C언어] 백준 1110번 - 더하기 사이클 (0) 2020.03.20