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

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

Войти
Регистрация
Восстановить пароль
 
Napster91
1 / 1 / 0
Регистрация: 28.11.2012
Сообщений: 20
#1

Подсчитать количество строк квадратной матрицы, являющихся перестановкой - C++

21.03.2013, 13:07. Просмотров 673. Ответов 0
Метки нет (Все метки)

Нужно подсчитать количество строк заданной целочисленной матрицы NxN, являющихся перестановкой чисел 1,2,...,N (т.е. содержащих каждое из чисел 1,2,...,N ровно один раз.)

Помогите дописать программу. Для поиска перестановок использовал комбинаторику. Т.е. если произведение элементов строки равно факториалу ранга матрицы, и в строке нет повторяющихся элементов, то эта строка - перестановка.
Программа не совсем корректно работает

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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include <iostream.h>
#include <time.h>
#include <stdlib.h>
 
 
int main()
{ 
       int n,m,i,j,s=1, fact=1, p, k;
 
 
 srand(time(NULL));
  cout<<"Input rang: "; cin>>n;
  
    for (int i=1; i<n+1; ++i)
  {      fact*=i;
  
  }
  cout <<endl<<"Factorial="<<fact<<endl<<endl;
  
       int**par=new int*[n];
               for (int i=0;i<n;i++)
               *(par+i)=new int[n];
               
               
  
   for (i=0;i<n;i++)
   
    { s=1;
      for (j=0;j<n;j++)
        {               
         int randomNumber;
            if (i%2==0)
            *(*(par+i)+j)=rand()%n;
            else
            *(*(par+i)+j)=s++;
          cout<<*(*(par+i)+j)<<" ";
                
        }
      cout<<endl;  
 
    }
cout <<endl;
 
 
for (i=0;i<n;i++)  
    {p=1;
        for (j=0;j<n;j++)
        
        { 
      if (*(*(par+i)+j)!=(*(*par+i)+j+1))
            p*=(*(*(par+i)+j));
           
     if (fact==p) k++;
             
      }
   cout <<p;
  
cout<<endl;
}
cout <<"Kol-vo perestanovok: "<<k<<endl;
system("pause");
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.03.2013, 13:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Подсчитать количество строк квадратной матрицы, являющихся перестановкой (C++):

Подсчитать количество строк заданной целочисленной матрицы n×n, являющихся перестановкой чисел 1, 2, ..., n - C++
Подсчитать количество строк заданной целочисленной матрицы n × n, являющихся перестановкой чисел 1, 2, ..., n (то есть содержащих каждое из...

Подсчитать количество строк матрицы, удовлетворяющих условию - C++
Уважаемые программисты помогите, пожалуйста!!! нужно решить задачу на С++, а то попрощаюсь с учебой Подсчитайте количество строк матрицы...

Подсчитать количество строк заданной целочисленной матрицы N*N - C++
Подсчитать количество строк заданной целочисленной матрицы N*N, являющихся перестановкой чисел 1,2,...,N(т.е. содержащих каждое из чисел...

Подсчитать количество строк матрицы, содержащих равные компоненты - C++
Дан двумерный массив. Найти количество строк, содержащих равные компоненты. Например, если массив 2х2 и в первой строке элементы первого...

Подсчитать количество натуральных чисел являющихся палиндромами - C++
Подсчитать количество натуральных чисел n (11 &lt;= n &lt;= 999), являющихся палиндромами, и распечатать их. Я ничего не понимаю. Где вообще...

Подсчитать количество строк матрицы у которых сумма элементов положительная - C++
Подсчитать такие строки массивы А, что суммы элементов этих строк положительны.

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.03.2013, 13:07
Привет! Вот еще темы с ответами:

Подсчитать количество строк заданной матрицы составленых из различных чисел - C++
Подсчитать количество строк заданной матрицы, которые составлены из различных чисел. Выполнить задание, используя динамическое выделение...

Необходимо подсчитать количество строк матрицы, которые не содержат ни одного 0 элемента. - C++
Ребята, помогите пожалуйста разобраться с задачкой. Дана целочисленная матрица nxm. Необходимо подсчитать количество строк, которые не...

Подсчитать количество строк матрицы произведение элементов которых больше 520 - C++
Дан двумерный массив действительных чисел. Составьте программу подсчёта количества строк, произведение элементов которых больше 520. Вот...

Подсчитать количество строк матрицы элементы которых представляют перестановки чисел от 1 до n - C++
Дана матрица A порядка n. Подсчитайте количество строк матрицы, элементы которых представляют перестановки чисел от 1 до n. Нужно...


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

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

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