Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.06.2008, 20:38   #1
LastDragon
Новичок
Джуниор
 
Регистрация: 19.06.2008
Сообщений: 1
По умолчанию C++ олимпиадная задачка

Дали мне на написание отчета олимпиадную задачку.. Решение на пару строк.. Пару раз уже код переписывал ниче не получаетсо.. Максимум выводит одно правильное число .. Вот условие :

Инверсия. Пускай P{p1,…,pn} является перестановкой чисел 1, 2,..., п. Таблицей инверсий перестановки Р называют последовательность Т{t1,…,tn} в которой t[i] равно количеству элементов перестановки Р, которые стоят (у Р) левее числа i и больших числа i. Например, для перестановки Р{5, 9, 1, 8, 2, 6, 4, 7, 3} чисел (1,2,...,9) таблица инверсий будет Т{2, 3, 6, 4, 0, 2, 2, 1, 0}.
Написать программу которая при заданой таблице инверсий возобновляет перестановку.

Мож кто поможет ? .. Решение тут на пару строк.. но вот чето не получается... =((
LastDragon вне форума Ответить с цитированием
Старый 19.06.2008, 23:04   #2
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

Код:
const T:array [0..8] of byte = (2, 3, 6, 4, 0, 2, 2, 1, 0);
const X:array [0..8] of byte = (0, 0, 0, 0, 0, 0, 0, 0, 0);
var i, C, k:integer;
begin
   i := 8; C := 0;
   while i >= 0 do begin
      for k := C downto T[i] do x[k+1] := x[k];
      x[T[i]] := i+1;
      dec(i);
      inc(C);
   end;
Ничего, что на паскале ? Мне так удобней думать.
alexBlack вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задачка SunKnight Паскаль, Turbo Pascal, PascalABC.NET 3 03.09.2008 20:44
Задачка для ума 3 ZORRO2005 Microsoft Office Excel 14 23.04.2008 12:35
Олимпиадная задача Carbon Общие вопросы C/C++ 2 23.05.2007 22:07