Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Bringoff
СуперМодулятор
132 / 131 / 15
Регистрация: 03.11.2012
Сообщений: 974
#1

Что делает этот код? - C++

30.11.2012, 21:50. Просмотров 425. Ответов 2
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <iostream>
#include <vector>
#include <algorithm>
 
using namespace std;
 
int main()
{
  long long n;
  cin>>n;
  int res[10]={0};
  vector <int> ans;
  if(n==0){cout<<10;return 0;}
  if(n<10) {cout<<n;return 0;}
  for(int i=9;i>=2;i--)
  {
    while(n%i==0)
        {res[i]++;
         n/=i;
        }
 
 
  }
  if(n!=1){cout<<-1;return 0;}
  for(int i=0;i<10;i++)
  while(res[i]){
    ans.push_back(i);
    res[i]--;
  }
  sort(ans.begin(),ans.end());
  for(int i=0;i<ans.size();i++)cout<<ans[i];
  return 0;
}
Только начал учить плюсы и многое непонятно. Что этот код делает? Интересует алгоритм.
Если что, это решение этой задачи:
Кликните здесь для просмотра всего текста
Ваша задача — найти минимальное положительное целое число Q такое, что произведение цифр числа Q в точности равняется N.
Пример: Ввод - "10"; Вывод - "25"


Добавлено через 1 час 27 минут
Хм... Не один я не понимаю?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.11.2012, 21:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Что делает этот код? (C++):

Что делает этот код? - C++
Не могли бы мне помочь int Score = std::atoi( Row ); кажется этот код показывает только числа. каким способом можно вывести тексты

Что примерно делает этот код (из HexRays) - C++
int __fastcall sub_4010##(int *a1, int a2) { int result; int v3; signed int v4; signed int v5; char v6; ...

Что делает этот "код"? - C++
Здравствуйте. Что делает этот код? Пробовал запускать в разных компиляторах, с разными настройками выводит какой то бред.class A { ...

Что делает этот декларатор(с++)? - C++
int(*sum);

Что делает этот оператор - C++
((i &lt; 2) ? !i ? x : у : x);

Что делает этот участок кода? - C++
Уважаемые программисты не могу разобраться что делает следующий кусочек кода, помогите пожалйста int ch; if( ( ch = getch() ) == 0...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Nick Alte
Эксперт С++
1637 / 1009 / 119
Регистрация: 27.09.2009
Сообщений: 1,945
Завершенные тесты: 1
30.11.2012, 23:29 #2
А в чём проблемы понимать-то? Число N раскладывается на множители, которые затем сортируются в порядке возрастания, что даёт искомый результат. Ну и плюс проверки на корректность.
1
Bringoff
СуперМодулятор
132 / 131 / 15
Регистрация: 03.11.2012
Сообщений: 974
01.12.2012, 10:59  [ТС] #3
Вообще так и думал...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.12.2012, 10:59
Привет! Вот еще темы с ответами:

обьясните пожалуйста что делает этот кусок кода с++ - C++
/* * Beap Constructor * Beap&lt;Type&gt; :: Beap( int h = 3 ) * * The argument is the default height of the allocated heap. ...

Что делает код? - C++
цитата из переведённой книги Александреску по языку D: &quot;Если кто-то из ваших коллег прокачал самоуверенность до уровня Супермена, ...

Пояснить что делает код - C++
вообще не бум бум ... можете сказать что выполняется ? int sum = 0; int max = 0; int tmpi = -1; for (i=0; i&lt;5;...

Что делает данный код? - C++
for (int i = 0; i&lt;s1.length(); i++) if (s2.find(s1) != string::npos) cout &lt;&lt; s1;


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru