BOJ/[ BOJ ] C++
[ C++ ] #2577 ( 숫자의 개수 )
haena02
2022. 2. 20. 19:26
반응형
어떻게 각 자리 숫자를 확인할까 하다가
몇자리인지 확인하고 그만큼 반복하며
일의자리 수 체크 10으로 나누기를 했다.
하지만 훨 간단한 방법이 있었다.
난 몇번반복하는가에 대하여 고민을 많이 했는데 이를 한번에 해결할 방법이 있었다.
밑에 주석처리 해놨으니 참고하면 될 것 같다.
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
int a, b, c,sum;
int num[10] = { 0, };
cin >> a >> b >> c;
sum = a * b * c;
int D=10,B=1;
while (sum>D) {
D *= 10;
B++;
}
for (int i = 0; i < B; i++) {
num[sum % 10]++;
sum /= 10;
}
/*
while (t>0) {
d[t%10]++;
t/=10;
}
*/
for (int i = 0; i < 10; i++) cout << num[i] << "\n";
}
반응형