vapadurudurupa

mail@pastecode.io avatar
unknown
c_cpp
8 months ago
876 B
10
Indexable
Never
#include <iostream>
#include <string.h>
/* На вход даётся строка, состоящая из латинских букв и цифр. Написать программу,
   Определяющую, есть ли в этой строке десятичные цифры, и выводящую наибольшее число,
   которое можно составить из этих цифр.
*/
void countNums(char* a, int counter [10]) {
   for (int i = 0; a[i] != '\0'; i++) {
      if (a[i] >= '0' && a[i] <= '9') {      
         counter[a[i] - '0']++;
      }
   }
   return;
}

int main () {
    char* str = new char[81];
    gets(str);
    int c[10] = {0};
    countNums(str, c);
    int d = 0;
    for (int i = 9; i >= 0; i--) {
      while (c[i] > 0) {
         d = d*10 + i;
         c[i]--;
      }
    }
    printf("%d\n", d);
    return 0;
}
Leave a Comment