Warning: Illegal string offset 'html' in /var/www/lvp37/data/www/lvp37.ru/cache/skin_cache/cacheid_1/skin_topic.php on line 909
Перестановка с повторением - олимпиадники-информатики

Перейти к содержимому


- - - - -

Перестановка с повторением


В этой теме нет ответов

#1 Санек

    Продвинутый пользователь

  • Администраторы
  • 41 сообщений
  • ГородВитебск

Отправлено 22 December 2011 - 12:37

Перестановки из n элементов с повторениями – это перестановки из n элементов, в каждую из которых входят n1 элементов 1-го типа, n2 элементов 2-го типа…, nm элементов m-го типа, где n1+n2+n +…+nm=n.

Pn(n1, n2, … nm) = n!/n1*n2*…*nm

Если m=3, b=’xyz’, kp=[2, 3, 2], ( в массиве kp записано сколько раз повторятся i-той букве как написано в примере) то перестановки с повторениями будут такими:

01122233 => xxyyyzz
01122323 => xxyyzyz
01122332 => xxyyzzy
01123223 => xxyzyyz
01123232 => xxyzyzy

03322211 => zzyyyxx

Словесный алгоритм тот же, что и в обычных перестановках.
var b:string; p,kp:array [0..255] of integer; n,i,j,d,k,l,s:longint;
  begin
   readln(B)/>;
	n:=length(B)/>;
	for i:=1 to n do read(kp[i]);
  
	p[0]:=0;
	for i:=1 to n do
	for j:=1 to kp[i] do
   	begin
    	l:=l+1;
    	p[l]:=i;
   	end;
  
   n:=l;
	while p[0]=0 do
	Begin
   	for i:=1 to n do write(b[p[i]]);
		writeln;
		s:=s+1;
      
   	j:=n;
    	while p[j-1]>=p[j] do j:=j-1;
      
   	k:=n;
    	while p[j-1]>=p[k] do k:=k-1;
      
   	d:=p[k];
   	p[k]:=p[j-1];
   	p[j-1]:=d;
      
   	for i:=j to (n+j-1)div 2 do
    	begin
    	d:=p[i];
    	p[i]:=p[n-i+j];
    	p[n-i+j]:=d;
    	end;
	end;
	writeln(s);
end.


#2 nogobsent

    Пользователь

  • Пользователи
  • PipPip
  • 10 сообщений
  • ГородTangier

Отправлено 25 June 2020 - 21:24

Stendra Secure Ordering Overseas Cheapeast buy cialis and viagra online Trecator daily cialis online Viagra Calgary Fast Shipping

#3 MelissaKer

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 04 July 2020 - 03:18

тыц-тыц))

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

#4 SaniraEXIFS

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 17 October 2020 - 13:27

Хочешь познакомиться с красивой девушкой?
Переходи здесь.

#5 SaniraEXIFS

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 17 October 2020 - 13:28

Хочешь познакомиться с симпатичной девушкой?
Жми здесь.

#6 SaniraEXIFS

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 17 October 2020 - 13:28

Хочешь познакомиться с свободной девицей?
Переходи сюда.

#7 SaniraEXIFS

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 17 October 2020 - 13:29

Хотел бы познакомиться с свободной девушкой?
Переходи сюда.

#8 SaniraEXIFS

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 17 October 2020 - 13:29

Желаешь познакомиться с симпатичной девушкой?
Жми сюда.

#9 SaniraEXIFS

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 17 October 2020 - 13:33

Хочешь познакомиться с обаятельной девушкой?
Кликай здесь.

#10 SaniraEXIFS

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 17 October 2020 - 13:33

Хочешь познакомиться с обаятельной девицей?
Кликай тут.

#11 SaniraEXIFS

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 17 October 2020 - 13:34

Желаешь познакомиться с свободной девкой?
Жми тут.

#12 SaniraEXIFS

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 17 October 2020 - 13:34

Хотел бы познакомиться с симпатичной девкой?
Кликай тут.

#13 SaniraEXIFS

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 17 October 2020 - 13:35

Хочешь познакомиться с свободной девушкой?
Кликай сюда.

#14 SaniraEXIFS

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 17 October 2020 - 13:37

Желаешь познакомиться с обаятельной девицей?
Переходи сюда.

#15 SaniraEXIFS

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 17 October 2020 - 13:38

Хочешь познакомиться с красивой девкой?
Кликни тут.

#16 SaniraEXIFS

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 17 October 2020 - 13:41

Желаешь познакомиться с красивой девушкой?
Переходи здесь.

#17 SaniraEXIFS

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 17 October 2020 - 13:42

Хотел бы познакомиться с обаятельной девушкой?
Переходи сюда.

#18 SaniraEXIFS

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 17 October 2020 - 13:44

Желаешь познакомиться с симпатичной девицей?
Кликай здесь.

#19 SaniraEXIFS

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 17 October 2020 - 13:44

Хотел бы познакомиться с симпатичной девицей?
Кликай тут.

#20 SaniraEXIFS

    Новичок

  • Пользователи
  • Pip
  • 0 сообщений

Отправлено 17 October 2020 - 13:46

Хотел бы познакомиться с красивой девушкой?
Кликай здесь.





Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анононимных