Есть ответ 👍

С++. Есть код на нахождение количества и суммы делитель числа. Нужно его оптимизировать. Выполняется очень долго сам код:
#include < >

int main()
{
int n, s = 0, ans = 0;
std::cin >> n;
for(int i = 1; i <= n; i++)
{
if(n % i == 0)
{
ans = ans + i;
s++;
}
}
std::cout << s << " " << ans;
}

155
458
Посмотреть ответы 2

Ответы на вопрос:

LOKI46
4,7(80 оценок)

pair<int,int> dels(int k){

   int sm = 0;

   set<int> s;

   for(int i = 1; i * i <= k; i++){

       if(k % i == 0){

           s.insert(i);

           s.insert(k/i);

           sm += i + k/i * (i != k/i);

       }

   }

   return {s.size(), sm};

}

signed main(){

   int n;

   cin >> n;

   pair<int, int> ans = dels(n);

   cout << ans.first << " " << ans.second;

}


  1)2,5 мб =  16777216 б   5)найдем количество   информации в одном символе. оно равно 7 битlog2(128) = 7 (логарифм от 128 по основанию 2)  у нас 800 символов, каждый по 7 бит итого 5600 битв одном байте 8 бит: 5600/8бит = 700 байт.  в 1кбайте 1024 байта (по старой классификации), итого700/1024 =  0.68359375 килобайта ответ:     0.68359375 килобайта2)  при алфавитном подходе к измерению количества информации известно, что если мощность алфавита n (количество букв в алфавите), а максимальное количество букв в слове, записанном с этого алфавита – m, то максимально возможное количество слов определяется по формуле l=nm. из условия известно количество слов (l=2048) и количество букв в каждом слове (m=2). надо найти n из получившегося уравнения 2048=n4. следовательно, n=2. ответ: 4 буквы.

Реши свою проблему, спроси otvet5GPT

  • Быстро
    Мгновенный ответ на твой вопрос
  • Точно
    Бот обладает знаниями во всех сферах
  • Бесплатно
    Задай вопрос и получи ответ бесплатно

Популярно: Информатика

Caktus Image

Есть вопросы?

  • Как otvet5GPT работает?

    otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса.
  • Сколько это стоит?

    Проект находиться на стадии тестирования и все услуги бесплатны.
  • Могу ли я использовать otvet5GPT в школе?

    Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое!
  • В чем отличия от ChatGPT?

    otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.

Подпишись на наш телеграмм канал

GTP TOP NEWS