Advertisement
xotohop

Kerill3

Dec 26th, 2019
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.95 KB | None | 0 0
  1. #include "pch.h"
  2. #include <iostream>
  3.  
  4. int sra(int a)
  5. {
  6.     int count = 0, sum = 0;
  7.     while (a > 0)
  8.     {
  9.         sum += (a % 10);
  10.         a /= 10;
  11.         count++;
  12.     }
  13.     return (float)sum / count;
  14. }
  15.  
  16. void ShellSort(int *x, int n)
  17. {
  18.     int i, j, step;
  19.     int tmp;
  20.  
  21.     for (step = n / 2; step > 0; step /= 2)
  22.         for (i = step; i < n; i++)
  23.         {  
  24.             tmp = x[i];
  25.             for (j = i; j >= step; j -= step)
  26.             {      
  27.                 if (sra(tmp) < sra(x[j - step]))
  28.                     x[j] = x[j - step];
  29.                 else
  30.                     break;
  31.             }
  32.             x[j] = tmp;
  33.         }
  34.     }
  35.  
  36. int main()
  37. {
  38.     int i, n, sum=0, count=0;
  39.     int *x;
  40.    
  41.     scanf_s("%d", &n);
  42.     x = (int *)malloc(n * sizeof(int));
  43.     for (i = 0; i < n; i++)
  44.         scanf_s("%d", &x[i]);
  45.  
  46.     ShellSort(x, n);
  47.  
  48.     for (i = 0; i < n; i++)
  49.         printf("%d ", x[i]);
  50.     return 0;
  51.  
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement