4 / 4 / 1
Регистрация: 23.01.2011
Сообщений: 11
1

Комбинаторные алгоритмы: Выяснить, можно ли разделить элементы данного массива на два подмассива с одинаковой суммой элементов

28.01.2011, 19:05. Показов 1466. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, помогите пожалуйста реализовать решение следующей задачи:

<<< Дан одномерный массив натуральных чисел. Выяснить, можно ли разделить элементы данного массива на два подмассива с одинаковой суммой элементов. Если можно, то вывести
а) одно решение;
б) все решения. >>>

Заранее, спасибо
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.01.2011, 19:05
Ответы с готовыми решениями:

Выяснить, можно ли разделить элементы массива на два подмассива с одинаковой суммой элементов
Дан одномерный массив натуральных чисел. Выяснить, можно ли разделить элементы данного массива на...

можно ли разделить элементы данного массива на три подмассива с одинаковой суммой элементов
Добрый день. Помогите пожалйста с программой :( Дан одномерный массив натуральных чисел....

Выясните, можно ли разделить элементы данного массива на три подмассива с одинаковой суммой элементов
3 дня до экзамена не успеваю сделать лабы помогите плиз! Вот условие: Дан одномерный массив...

Разделить подмножество чисел на два разных подмножества с одинаковой суммой
Разделить подмножество чисел на два разных подмножества с одинаковой суммой. Все числа должны быть...

2
34 / 23 / 26
Регистрация: 22.01.2011
Сообщений: 76
28.01.2011, 21:54 2
Лучший ответ Сообщение было отмечено partyes как решение

Решение

Если я всё правильно понял, то должно быть что-то вроде этого:
Pascal
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
var
   N           :integer;
   i           :integer;
   a           :array[1..1000] of integer;
   kol         :integer;
   check       :boolean;
   s1,s2       :integer;
begin
     Write('N = ');
     Read(N);
     check:=false;
     WriteLn('Ввод массива:');
     for i:=1 to N do
     begin
          Read(a[i]);
     end;
     for kol:=1 to N-1 do
     begin
          s1:=0; s2:=0;
          for i:=1 to kol do
          begin
               s1:=s1+a[i];
          end;
          for i:=kol+1 to N do
          begin
               s2:=s2+a[i];
          end;
          if s1=s2
          then
          begin
               check:=true;
               WriteLn('Первый массив:');
               for i:=1 to kol do
               begin
                    Write(a[i],' ');
               end;
               WriteLn;
               WriteLn('Второй массив:');
               for i:=kol+1 to N do
               begin
                    Write(a[i],' ');
               end;
               WriteLn;
          end;
     end;
     if check=false
     then
         Write('Разделить массив невозможно.');
end.
0
4 / 4 / 1
Регистрация: 23.01.2011
Сообщений: 11
28.01.2011, 22:20  [ТС] 3
ага, только она разделяет их на если элменты идут 1 за другим, ну тоесть массив 1 3 2 2 она разделит на 1 3 и на 2 2, однако массив 1 2 3 2 не сможет разделить(
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.01.2011, 22:20
Помогаю со студенческими работами здесь

Выяснить, есть ли в двумерном массиве столбцы с одинаковой суммой элементов
Добрый вечер! Помогите пожалуйста исправить ошибки есть код: #include &lt;iostream&gt; #include...

Выбрать из массива А подмассив В с заданной суммой элементов S или сообщить, что подмассива не существует
Нужно помочь очень хорошему человеку решить задачки. Помогите пожалуйста если можете....

Для квадратной матрицы определить, содержит ли она два разных столбца, с одинаковой суммой элементов
Для квадратной матрицы определить, содержит ли она два разных столбца, с одинаковой суммой элементов

Определить элементы массива, которые можно представить суммой двух других элементов
код рабочий. Суть в том что программа выводит те числа, которые можно представить суммой двух...

Вывести на экран те элементы массива, которые можно представить суммой двух других элементов
Помогите решить Дан массив, состоящий из 20 элементов, упорядоченный по неубыванию. Вывести на...

Подсчитать сумму столбцов матрицы и выяснить, есть ли среди них столбцы с одинаковой суммой
Добрый вечер форумчани! Нужно перевести программу с языка С++ на С. Программа должна...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru