Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.82/57: Рейтинг темы: голосов - 57, средняя оценка - 4.82
paxak93
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 28
#1

Сколько различных натуральных чисел можно составить из цифр 0, 1, 2, 3, 4, 5,

10.06.2012, 10:26. Просмотров 10319. Ответов 13
Метки нет (Все метки)

Сколько различных натуральных чисел можно составить из цифр 0, 1, 2, 3, 4, 5,
если каждая цифра входит не более одного раза
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.06.2012, 10:26
Ответы с готовыми решениями:

Множества: дано N натуральных чисел. Сколько различных цифр встречается в его десятичной записи?
Помогите написать порограу на с++ с множиствами. Дано N натуральных чисел.Для...

Найти сколько различных трехзначных чисел можно получить из заданного числа n путем вычеркивания цифр
Задача: найти сколько различных трехзначных чисел можно получить из заданного...

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

Сколько различных ожерелий можно составить из 2-ух белых, 2-ух синих и 2-ух красных бусин?
Доброго времени суток помогите написать программу Сколько различных...

Задача на рекурсию. Сколько существует k-значных натуральных чисел, сумма цифр которых равна s
Задание (нужно выполнять рекурсией): Даны натуральные числа k и s....

13
Jtalk
95 / 81 / 3
Регистрация: 13.05.2011
Сообщений: 279
10.06.2012, 11:37 #2
Это сумма перестановок
1
diagon
Higher
1937 / 1203 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
10.06.2012, 11:43 #3
вроде как 6!
Или там можно не только шестизначные?
Тогда сочетания
1
Jtalk
95 / 81 / 3
Регистрация: 13.05.2011
Сообщений: 279
10.06.2012, 11:48 #4
Цитата Сообщение от Jtalk Посмотреть сообщение
Это сумма перестановок
Цитата Сообщение от diagon Посмотреть сообщение
вроде как 6!
Или там можно не только шестизначные?
Тогда сочетания
Неправда, это сумма размещений
1
diagon
Higher
1937 / 1203 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
10.06.2012, 11:55 #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
int factorial(int x)
{
    return x ? factorial(x - 1) * x : 1;
}
 
int main()
{
    const int n = 6;
    
    int ans = 0;
    
    for (int i = 1; i <= 6; ++i)
        ans += factorial(n) / factorial(n - i);
        
    std::cout << ans;
}
1
paxak93
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 28
10.06.2012, 12:23  [ТС] #6
Цитата Сообщение от diagon Посмотреть сообщение
вроде как 6!
Или там можно не только шестизначные?
Тогда сочетания
можно и однозначные, и ноль тоже считается.
0
g-h
67 / 67 / 18
Регистрация: 03.06.2012
Сообщений: 176
10.06.2012, 12:34 #7
Цитата Сообщение от paxak93 Посмотреть сообщение
можно и однозначные, и ноль тоже считается.
Только 0 не должен быть первой цифрой
1
paxak93
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 28
10.06.2012, 12:42  [ТС] #8
Цитата Сообщение от diagon Посмотреть сообщение
вроде как 6!
Или там можно не только шестизначные?
Тогда сочетания
Цитата Сообщение от g-h Посмотреть сообщение
Только 0 не должен быть первой цифрой
Ну да
0
diagon
Higher
1937 / 1203 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
10.06.2012, 12:46 #9
Цитата Сообщение от g-h Посмотреть сообщение
Только 0 не должен быть первой цифрой
Черт, это я не учел. При таких ограничениях можно брутфорсом решить. Либо вывести комбинаторную формулу(стандартные здесь не работают).
1
Jtalk
95 / 81 / 3
Регистрация: 13.05.2011
Сообщений: 279
10.06.2012, 12:50 #10
Что там выводить-то? Это сумма разностей перестановок из 6 по i и из 5 по i-1 для i : 1 .. 6.
1
paxak93
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 28
10.06.2012, 12:57  [ТС] #11
и все таки каков правильный ответ?

Добавлено через 2 минуты
Цитата Сообщение от Jtalk Посмотреть сообщение
Неправда, это сумма размещений
это размещение без повторений.
0
diagon
Higher
1937 / 1203 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
10.06.2012, 13:17 #12
Эх, забыл я комбинаторику.
Ответ - 1631

Добавлено через 7 минут
Если что, считал так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
 
int factorial(int x)
{
    return x ? factorial(x - 1) * x : 1;
}
 
int main()
{
    const int n = 6;
    
    int ans = 0;
    
    for (int i = 1; i <= 6; ++i)
    {
        ans += factorial(n) / factorial(n - i);
        
        if ( i > 1 )
            ans -= ( factorial(n) / factorial(n - i) ) / 6;
    }
        
    std::cout << ans; //1631
}
1
paxak93
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 28
10.06.2012, 13:18  [ТС] #13
Цитата Сообщение от diagon Посмотреть сообщение
Эх, забыл я комбинаторику.
Ответ - 1631
у решил и у меня 1630 а от куда еще единица взялась?
0
diagon
Higher
1937 / 1203 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
10.06.2012, 13:20 #14
Цитата Сообщение от paxak93 Посмотреть сообщение
у решил и у меня 1630 а от куда еще единица взялась?
Не знаю, может, вы 0 не учитываете.
Я брутфорсом свое решение проверил:
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
#include <iostream>
 
bool is_correct(int x)
{
    int arr[10] = {};
    
    for (; x != 0; x /= 10)
        ++arr[x % 10];
        
    if ( arr[6] || arr[7] || arr[8] || arr[9] )
        return false;
        
    for (int i = 0; i <= 6; ++i)
        if (arr[i] > 1)
            return false;
            
    return true;    
}
 
int main()
{   
    int c = 0;
    for (int i = 0; i < int(1e7); ++i)
        c += is_correct(i);
        
    std::cout << c; //1631
}
1
10.06.2012, 13:20
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.06.2012, 13:20

Сколько цифр можно составить из заданных букв?
Дана последовательность из букв. Найти сколько цифр можно составить из этих...

Даны натуральные числа k и s. Определите, сколько существует k-значных натуральных чисел, сумма цифр которых равна d.
Даны натуральные числа k и s. Определите, сколько существует k-значных...

Составить программу подсчета числа всех натуральных чисел, меньших M, квадрат суммы цифр которых равен X.
Составить программу подсчета числа всех натуральных чисел, меньших M, квадрат...


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

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

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