Гость
Статьи
Задача Принцессы Эльзы

Задача Принцессы Эльзы

Инна изготавливает гирлянды из фигурок пяти разных форм. Обозначим эти фигурки a, b, c, d, e.
Сколько различных гирлянд может изготовить Инна, если в каждой гирлянде должно быть шесть фигурок, из которых три одинаковые, а три другие различные (например, abdaea, aaabde, bbcbae, cacbdc...)?

17 ответов
Последний — Перейти
Гость
#1

сдохни

Облачко безответственная тетка
#2

Ищу мужа, который будет выплачивать все мои кредиты.

Гость
#3

А вот тебе загадка из Швейка. Перхоть ты подзалупная.
Стоит четырехэтажный дом, в каждом этаже по восьми окон, на крыше - два слуховых окна и две трубы, в каждом этаже по два квартиранта. А теперь скажите, господа, в каком году умерла у швейцара его бабушка?

mynameisinfinityandilovetits
#4

ya uze videl eti posti v chem ih smisl?

mynameisinfinityandilovetits
#5

var array1:array of char;
SetLength(array1,MaxInteger);
array1[0] = a;
array1[1] = b;
array1[2] = c;
array1[3] = d;
array1[4] = e;

extention function Random from int.pas as Randoooom;

var result_array:array of array string;
SetLength(result_array,MaxInteger);

function chech_for_triple_chars(char1:array of char):boolean;
var is_a:integer;
var is_b:integer;
var is_c:integer;
var is_d:integer;
var is_e:integer;
var a,b:integer;
begin

result:=false;
a:=0;
b:=5;
while a < b do
begin

if result_array[counter][0] = 'a' then is_a:=is_a+1;
if result_array[counter][0] = 'b' then is_b:=is_b+1;
if result_array[counter][0] = 'c' then is_c:=is_c+1;
if result_array[counter][0] = 'd' then is_d:=is_d+1;
if result_array[counter][0] = 'e' then is_e:=is_e+1;
a:=a+1;
end;

if (is_a > 2) or (is_b > 2) or (is_c > 2) or (is_d > 2) or (is_e > 2) then
begin
result:=true;
end;

end;

function awdawdawdawdawdawdawda(result_array):array of string;
var counter,counter2,a,b:integer;
c:boolean;
beign

counter:=0;
while counter < MaxInteger do
begin

result_array[counter][0] = array1[Randoooom(0,4)];
result_array[counter][1] = array1[Randoooom(0,4)];
result_array[counter][2] = array1[Randoooom(0,4)];
result_array[counter][3] = array1[Randoooom(0,4)];
result_array[counter][4] = array1[Randoooom(0,4)];
result_array[counter][5] = array1[Randoooom(0,4)];
//***
if chech_for_triple_chars(result_array[counter]) = true then
begin

counter2:=0;
c:=false;
while counter2 < MaxInteger do
begin

if result_array[counter2] = result_array[counter] then
begin
c:=true;
end;
counter2:=counter2+1;

end;

if c = true then
begin
counter:=counter-1; //*** hitrost croyetsya tut
end;

end;
//***
end;

end;

counter:=counter+1;

end;

end;

//***
//***
//***
awdawdawdawdawdawdawda(result_array);

mynameisinfinityandilovetits
#6
mynameisinfinityandilovetits

var array1:array of char;
SetLength(array1,MaxInteger);
array1[0] = a;
array1[1] = b;
array1[2] = c;
array1[3] = d;
array1[4] = e;

extention function Random from int.pas as Randoooom;

var result_array:array of array string;
SetLength(result_array,MaxInteger);

function chech_for_triple_chars(char1:array of char):boolean;
var is_a:integer;
var is_b:integer;
var is_c:integer;
var is_d:integer;
var is_e:integer;
var a,b:integer;
begin

result:=false;
a:=0;
b:=5;
while a < b do
begin

if result_array[counter][0] = 'a' then is_a:=is_a+1;
if result_array[counter][0] = 'b' then is_b:=is_b+1;
if result_array[counter][0] = 'c' then is_c:=is_c+1;
if result_array[counter][0] = 'd' then is_d:=is_d+1;
if result_array[counter][0] = 'e' then is_e:=is_e+1;
a:=a+1;
end;

if (is_a > 2) or (is_b > 2) or (is_c > 2) or (is_d > 2) or (is_e > 2) then
begin
result:=true;
end;

end;

function awdawdawdawdawdawdawda(result_array):array of string;
var counter,counter2,a,b:integer;
c:boolean;
beign

counter:=0;
while counter < MaxInteger do
begin

result_array[counter][0] = array1[Randoooom(0,4)];
result_array[counter][1] = array1[Randoooom(0,4)];
result_array[counter][2] = array1[Randoooom(0,4)];
result_array[counter][3] = array1[Randoooom(0,4)];
result_array[counter][4] = array1[Randoooom(0,4)];
result_array[counter][5] = array1[Randoooom(0,4)];
//***
if chech_for_triple_chars(result_array[counter]) = true then
begin

counter2:=0;
c:=false;
while counter2 < MaxInteger do
begin

if result_array[counter2] = result_array[counter] then
begin
c:=true;
end;
counter2:=counter2+1;

end;

if c = true then
begin
counter:=counter-1; //*** hitrost croyetsya tut
end;

end;
//***
end;

end;

counter:=counter+1;

end;

end;

//***
//***
//***
awdawdawdawdawdawdawda(result_array);

na refactori tam hitroviibonost

mynameisinfinityandilovetits
#7
mynameisinfinityandilovetits

var array1:array of char;
SetLength(array1,MaxInteger);
array1[0] = a;
array1[1] = b;
array1[2] = c;
array1[3] = d;
array1[4] = e;

extention function Random from int.pas as Randoooom;

var result_array:array of array string;
SetLength(result_array,MaxInteger);

function chech_for_triple_chars(char1:array of char):boolean;
var is_a:integer;
var is_b:integer;
var is_c:integer;
var is_d:integer;
var is_e:integer;
var a,b:integer;
begin

result:=false;
a:=0;
b:=5;
while a < b do
begin

if result_array[counter][0] = 'a' then is_a:=is_a+1;
if result_array[counter][0] = 'b' then is_b:=is_b+1;
if result_array[counter][0] = 'c' then is_c:=is_c+1;
if result_array[counter][0] = 'd' then is_d:=is_d+1;
if result_array[counter][0] = 'e' then is_e:=is_e+1;
a:=a+1;
end;

if (is_a > 2) or (is_b > 2) or (is_c > 2) or (is_d > 2) or (is_e > 2) then
begin
result:=true;
end;

end;

function awdawdawdawdawdawdawda(result_array):array of string;
var counter,counter2,a,b:integer;
c:boolean;
beign

counter:=0;
while counter < MaxInteger do
begin

result_array[counter][0] = array1[Randoooom(0,4)];
result_array[counter][1] = array1[Randoooom(0,4)];
result_array[counter][2] = array1[Randoooom(0,4)];
result_array[counter][3] = array1[Randoooom(0,4)];
result_array[counter][4] = array1[Randoooom(0,4)];
result_array[counter][5] = array1[Randoooom(0,4)];
//***
if chech_for_triple_chars(result_array[counter]) = true then
begin

counter2:=0;
c:=false;
while counter2 < MaxInteger do
begin

if result_array[counter2] = result_array[counter] then
begin
c:=true;
end;
counter2:=counter2+1;

end;

if c = true then
begin
counter:=counter-1; //*** hitrost croyetsya tut
end;

end;
//***
end;

end;

counter:=counter+1;

end;

end;

//***
//***
//***
awdawdawdawdawdawdawda(result_array);

а ещё код потанцевально забагован из за математической цикличности функции рандум из билиотеки нитегер, поэтому вот тебе задач оптимизирай чтобы избежать бесконечного цикла '_'

Принцесса Эльза
#8
mynameisinfinityandilovetits

а ещё код потанцевально забагован из за математической цикличности функции рандум из билиотеки нитегер, поэтому вот тебе задач оптимизирай чтобы избежать бесконечного цикла '_'

Я не по програмированию задачу составила!
Прекрати!

mynameisinfinityandilovetits
#9
Принцесса Эльза

Я не по програмированию задачу составила!
Прекрати!

всмысле задача математическая, это алгоритмическая алгебра, программированием я проверил валидность вот тебе решение, или ты сама не знаешь ответ хахахахаха

mynameisinfinityandilovetits
#10
mynameisinfinityandilovetits

всмысле задача математическая, это алгоритмическая алгебра, программированием я проверил валидность вот тебе решение, или ты сама не знаешь ответ хахахахаха

процедурная только вроде называется а не алгоритмическая

Принцесса Эльза
#11
mynameisinfinityandilovetits

всмысле задача математическая, это алгоритмическая алгебра, программированием я проверил валидность вот тебе решение, или ты сама не знаешь ответ хахахахаха

Ответа ты не знаешь. Иначе бы уже указал его.

Гость
#12

Наверное так
1. Сначала вычисляем количество сочетаний 4 из 6, это варианты наполнения гирлянд 4-мя цветами. =15
2. Далее для каждого сочетания имеем еще 4 варианта наборов (1 цвет берется 3 раза)
3. Для каждого набора вычисляем количество размещений из 6 лампочек = 720
4. Итого 720*15*4 = 43200
В арифметики могла наложать

Принцесса Эльза
#13
Гость

Наверное так
1. Сначала вычисляем количество сочетаний 4 из 6, это варианты наполнения гирлянд 4-мя цветами. =15
2. Далее для каждого сочетания имеем еще 4 варианта наборов (1 цвет берется 3 раза)
3. Для каждого набора вычисляем количество размещений из 6 лампочек = 720
4. Итого 720*15*4 = 43200
В арифметики могла наложать

Решение.
1 Тройку (сочетание) вакансий для одинкковых фигурок (среди шести) выбираем C(6;3)= 20 способами.
2. Число исходов {a,a,a},(b, c, d), т.е. число исходов, при которых в гирлянде есть три фигурки "a" и три другие (различные) фигурки, равно
20*4*3*2= 480.
3. А поскольку вместо а можно взять любую другую фигурку (из пяти), то
Ответ: 480*5=2400.

Гость
#14
Облачко безответственная тетка

Ищу мужа, который будет выплачивать все мои кредиты.

Облачко, Маша, Эльза... какая разница, все с шизы нет.
И стихи на стихи ру пишут

Гость
#15
Принцесса Эльза

Решение.
1 Тройку (сочетание) вакансий для одинкковых фигурок (среди шести) выбираем C(6;3)= 20 способами.
2. Число исходов {a,a,a},(b, c, d), т.е. число исходов, при которых в гирлянде есть три фигурки "a" и три другие (различные) фигурки, равно
20*4*3*2= 480.
3. А поскольку вместо а можно взять любую другую фигурку (из пяти), то
Ответ: 480*5=2400.

Похоже я не то считала. Я поняла условие, что наборы aaabcd и bcdaaa это разные гирлянды.

Принцесса Эльза
#16
Гость

Похоже я не то считала. Я поняла условие, что наборы aaabcd и bcdaaa это разные гирлянды.

Конечно разные. Я и не писала, что они одинаковые.
{a,a,a}(b,c,d)-схематичная запись- три раза а, и три другие фигурки. Конечно, порядок имеет значение.

Гость
#17
Принцесса Эльза

Конечно разные. Я и не писала, что они одинаковые.
{a,a,a}(b,c,d)-схематичная запись- три раза а, и три другие фигурки. Конечно, порядок имеет значение.

А все, нашла свою ошибку. Пункт 3 у меня не корректный

Форум: Развлечения
Всего: 48 123 темы
Новые темы за все время: 38 155 тем
Популярные темы за все время: 17 423 темы