본문 바로가기
SWE/코테

백준_1427

by S나라라2 2018. 1. 20.
반응형

// #1427 소트인사이드 // 입력: 첫째 줄에 정렬하고자하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다. // 출력: 첫째 줄에 자리수를 내림차순으로 정렬한 수를 출력한다. #define _CRT_SECURE_NO_WARNINGS #include

int arr[10] = { 0, }; // 0,1,2,...,9 숫자가 각각 몇번나오는지 체크 int DidItStartNum = 0; int division(int *num,int *div) { if (*div !=0 && *num/(*div)==0 && DidItStartNum==0) { *div = *div / 10; return -999; } else //( *div !=0 ) { int result = *num / *div; *num = *num % (*div); *div = *div / 10; return result; } } int main() { int n; scanf("%d",&n); int div = 1000000000; // 각 자리수의 숫자를 확인 // 0~9까지 몇번 나왔는지 세기 while (div>0) { int idx = division(&n, &div); if (idx != -999) { DidItStartNum = 1; arr[idx]++; } } // 출력 // 9~0 내림차순으로 나온 수만큼 출력해주기 for (int i = 9; i > -1; i--) { if (arr[i] != 0) { for (int j = 0; j < arr[i]; j++) { printf("%d",i); } } } return 0; }


반응형