Dmitrii_Shamilevich2019
?>

Опишіть клас Drib, об’єктами якого є звичайні дроби

Информатика

Ответы

info22
Отсортируйте массив по не возрастанию (вместе с индексами) и подсчитайте сумму  s = s+b[i]*(i+1) - индексы от нуля.
Это и будет наименьшее время.

#include <iostream>
#include <cstdlib>
using namespace std;

int main() {
   int n,i,s;
   bool priz=true;
   cin>>n;
   int b[n],c[n];
   for (int i=0; i<n; i++)
   { 
       cin>>b[i];
       c[i]=i+1;
   }  
// сортировка масcива по не возрастанию
   while (priz)
   {
     priz=false;
     for (int i=0; i<n-1; i++)
     {
       if (b[i]<b[i+1])
       {
         swap(b[i],b[i+1]);
         swap(c[i],c[i+1]);              
         priz=true;
       }
     } 
   }
   s=0;
   for (int i=0; i<n; i++)  s+=b[i]*(i+1);
   cout<<s<<endl;
   for (int i=0; i<n; i++)  cout<<c[i]<<" ";
   cout<<endl;
   system("pause");
   return(0);
}

Ввод - вывод:

6
10 21 13 36 41 9
332
5 4 2 3 1 6
ecocheminnov437

11

Объяснение:

1. Алфавит мощностью 26 символов требует для кодирования символа 5 бит (2* < 26 <29). 14 символа займут 14х5 - 70 бит %3D 70 / 8%3D 8.75 байта, округляем до целого вверх, получаем 9 байт.

2. Номер года обозначается одним из 100 чисел. 2° < 100 > 2", поэтому для кодирования требуется 7 бит.

3. Номер для обозначается одним из 366 чисел. 2° < 366> 2°, поэтому для кодирования требуется 9 бит.

4. Всего для кодирования срока действия потребуется 7+9 %3 16 бит %3D16/2%3D2 байта 5. Вся информация на пропуске займет 9+2 3D 16 байт

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Опишіть клас Drib, об’єктами якого є звичайні дроби
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

nikiforovako76
mac4roc3781
Gor Anatolevich
muz-cd
de1979nis
tokarevmax
ipKAV85
derkachn6429
rykovatv6
Александрович833
milo4ka26
ПодлеснаяМакарова1883
Станиславович ыфвыв
davidovalbert6
Kuznetsova1639