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

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

Войти
Регистрация
Восстановить пароль
 
pOlivka
6 / 6 / 1
Регистрация: 12.05.2014
Сообщений: 30
#1

Подсчитать количество способов размещения, чтобы между числами k было ровно k других чисел - C++

20.11.2014, 03:48. Просмотров 311. Ответов 6
Метки нет (Все метки)

Условие:
Дано следующие множество чисел {1,1,1,2,2,2...9,9,9} (тройки). Подсчитать количество способов размещения всех этих чисел в строку/ряд таким образом, чтобы между двумя последовательными числами k располагалось ровно k других. Вывести все эти способы размещения.
Пример такого размещения для множество {1,1,2,2...16,16} (пары)
{16,6,9,15,2,3,8,2,6,3,13,10,9,12,14,8,11,16,1,15,1,5,10,7,13,4,12,5,11,14,4,7}
Не как не могу понять что именно должна сделать программа. Помогите чем сможете.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.11.2014, 03:48
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Подсчитать количество способов размещения, чтобы между числами k было ровно k других чисел (C++):

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

Заполнить матрицу заданного размера числами 1,2,3,4 так, чтобы по горизонтали, вертикали и диагонали не было одинаковых рядом стоящих чисел. - C++
Заполнить матрицу заданного размера M(k,l) числами 1,2,3,4 так, чтобы по горизонтали, вертикали и диагонали не было одинаковых рядом...

Вывести на экран числа которые находятся между a и b, и чтобы в одной строке было не больше 10 чисел - C++
#include <iostream> int main() { int sum = 0, Fval; for (int Fval =11; Fval <=32; Fval++) sum=sum+1; if (sum<10) ...

Вывести файл на экран, чтобы в каждой строке было не больше 40 символов, и количество строк было минимальным - C++
Дано файл f. Вывести этот файл на экран так что бы в каждой строчке было не больше, чем 40 символов и количество строк было минимальным.

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

Подсчитать количество способов замостить шахматную доску доминошками - C++
На шахматной доске,размером N*N клеток(2<=N<=8),подсчитать кол-во способов,которыми можно замостить данную доску стандартными...

6
mersinvald
1 / 1 / 0
Регистрация: 25.08.2012
Сообщений: 47
20.11.2014, 04:31 #2
Человеческим языком: избежать повторений числа больше раз, чем k. То есть, если k=1, число не должно повторяться подряд ни разу. Если k=2, после каждого повтора 2 раза должны идти 2 или меньше других. И так далее
0
pOlivka
6 / 6 / 1
Регистрация: 12.05.2014
Сообщений: 30
20.11.2014, 04:35  [ТС] #3
Я думал что между повторяющимися k должно быть k элементов, не важно каких(если k=2 то 2,*,*,2). Но вы уверенны в своём ответе или может я что не так понял?
0
mersinvald
1 / 1 / 0
Регистрация: 25.08.2012
Сообщений: 47
20.11.2014, 04:41 #4
Ох, прошу прощения. Спать пора.
Да, вы вроде бы верно понимаете. Хотя смущает то, что первый пример не подходит под ваш вариант понимания.
0
pOlivka
6 / 6 / 1
Регистрация: 12.05.2014
Сообщений: 30
20.11.2014, 04:43  [ТС] #5
В том то и дело. Я не понимаю до конца как должна работать программа. По этому и прощу помощи тут. Но и вам спасибо за потраченное на меня время.
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
20.11.2014, 06:16 #6
Цитата Сообщение от pOlivka Посмотреть сообщение
В том то и дело. Я не понимаю до конца как должна работать программа. По этому и прощу помощи тут. Но и вам спасибо за потраченное на меня время.
попробую объяснить задачу, если получится
Ваша задача расположить числа k так, чтобы между ними было ровно k других чисел.
Наверное, лучше на примере разобрать.
Давайте возьмем маленькую последовательность, например:
{1,1,2,2,3,3}
То есть, берем два одинаковых числа (k) из последовательности и располагаем между ними другие числа так, чтобы их было ровно k штук.
Получим такую последовательность:
3,1,2,1,3,2
Как видите, между тройками ( в данном случае k = 3 ) стоит ровно 3 числа,
между двойками - 2,
между единицами - 1 число.

Добавлено через 2 минуты
В вашем примере
Пример такого размещения для множество {1,1,2,2...16,16} (пары)
{16,6,9,15,2,3,8,2,6,3,13,10,9,12,14,8,11,16,1,15,1,5,10,7,13,4,12,5,11,14,4,7}
посчитайте, например, что между двумя соседними восьмерками распологается ровно восемь других чисел,
между семерками - семь и т.д.
1
pOlivka
6 / 6 / 1
Регистрация: 12.05.2014
Сообщений: 30
20.11.2014, 08:53  [ТС] #7
Спасибо. Сейчас буду пробовать реализовать на практике.
0
20.11.2014, 08:53
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.11.2014, 08:53
Привет! Вот еще темы с ответами:

Подсчитать количество чисел в текстовом файле, дописать в него числа, чтобы их стало 20 - C++
Создать текстовый файл, в который записать в столбик несколько чисел (<20). Составить программу, которая подсчитывала бы количество чисел в...

В списке целых чисел подсчитать количество переменных знаков. Вывести между какими элементами - C++
Вроде односвязный список организовал, но вдруг приспичило двусвязный сделать. Прошу подскажите с какой стороны зайти. List.cpp /* *...

Подсчитать количество слов, которые встречаются в предложении ровно 1 раз - C++
Очень прошу помочь написать программу: Дано предложение, состоящее из слов, разделенных пробелами. Подсчитать количество слов, которые...

Сделать, чтобы размер массива нужно было вводить с клавиатуры и он заполнялся случайными числами - C++
Как можно сделать, чтобы размер массива нужно было вводить с клавиатуры и он определялся через ranomize(), т.е массив создавался из...


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

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

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