0 / 0 / 0
Регистрация: 04.06.2015
Сообщений: 1

Помогите с олимпиадной задачкой (

19.06.2008, 20:43. Показов 1573. Ответов 1
Метки нет (Все метки)

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


Инверсия. Пускай 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}.
Написать программу которая при заданой таблице инверсий возобновляет перестановку.


Мож кто поможет ? .. Решение тут на пару строк.. но вот чето не получается... =((
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
19.06.2008, 20:43
Ответы с готовыми решениями:

Помогите с Задачкой
1. Реализовать функцию нахождения всех простых чисел в диапазоне от 1 до 101. Сгенерированные числа сохранить в массиве. Элементы массива...

Помогите с задачкой на С++
Посоветывали обратиться тут....задали в УНивере такую задачу, а я даже не имею представления как ее решать:eek: :( :( Дано...

помогите с задачкой((
в программирование 0, а задачу позарез решить надо в cи++. Народ, помогите! :'( даны n ( n max = 100) разных чисел.Найти среди них 2...

1
Эксперт С++
 Аватар для XuTPbIu_MuHTAu
2256 / 771 / 25
Регистрация: 27.05.2008
Сообщений: 1,496
20.06.2008, 13:48
Лучший ответ Сообщение было отмечено как решение

Решение

C++
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
#include <stdio.h>
#include <conio.h>
int main () {
    int * P,*T,n,i,j,k,l,t;
    printf("enter length : " ) ;
    scanf("%d",&n);
    P = new int[n];
    T = new int[n];
    printf("input inversion array : ");
    for(i=0;i<n;i++) {
        scanf("%d",&T[i]);
        P[i]=i+1;
    };
    for(i=0;i<n;i++) {
        for(j=0;j<n;j++) if(P[j]==i+1) break;
        k = T[i];
        l=0;
        while(P[l]<P[j]) l++;
        while(k>0) {
            if(P[l]>=P[j])k--;
            while(P[++l]<P[j]);
        };
        t= P[j];
        P[j]=P[l];
        P[l]=t;
    };
    printf("\n");
    for(i=0;i<n;i++) printf("%d ",P[i]);
    while(!kbhit());
    return 0;
};
[/code]Добавлено через 1 минуту
Суть решения проста : расставлять циферки начиная с младшей подряд.
На каждом шаге мы знаем,что меньшие цифры стоят на своих местах,а на остальных может быть либа текущая либо большая.Прокручиваем нужное количество свободных мест и ставим на следующее текущую.Все.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.06.2008, 13:48
Помогаю со студенческими работами здесь

Помогите с задачкой.
Поместить элементы массива X в начало массива Y в обратном порядке, исключив элементы, превосходящие по абсолютной величине вводимое...

Помогите с задачкой, пожалуйста. (С++)
Вообщем, программирование только началось, а вопросов куча :\ Помогите, если есть у кого-нибудь желание. Ближе к задаче: нам дан...

Помогите с простой задачкой.
Есть код: #include &lt;stdio.h&gt; int main() { int x=2; int y; int z; x*=3+2; printf(&quot;x=%d\n&quot;, x); // x = 10

Помогите с действительно простой задачкой.
Дан код: /* Conditional expressions */ #include &lt;stdio.h&gt; #include &lt;iostream&gt; int main() { int x=1; int y=1; int...

помогите с задачкой
дано натуральное семизначное число n. определить встречается ли в нем заданная цифра A. если встречается то сколько раз?


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

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

Новые блоги и статьи
Исключения в Java: советы, примеры кода и многое другое
Javaican 18.05.2025
Исключения — это объекты, созданные когда программа сталкивается с непредвиденной ситуацией: файл не найден, сетевое соединение разорвано, деление на ноль. . . Список можно продолжать до бесконечности. . . .
Как сделать SSO (Single Sign-On) в C# приложении
stackOverflow 18.05.2025
SSO — это механизм, позволяющий пользователю пройти аутентификацию один раз и получить доступ к нескольким приложениям без повторного ввода учетных данных. Вы наверняка сталкивались с ним, когда. . .
Kubernetes с Apache Flink для обработки данных в реальном времени
Mr. Docker 17.05.2025
Kubernetes — это целая философия управления распределёнными приложениями. В отличие от "примитивных" решений вроде Docker Swarm, K8s (как его ласково называют в тусовке DevOps-инженеров) предлагает. . .
Использование декораторов в Python
py-thonny 17.05.2025
Если вы когда-нибудь задумывались о том, как красиво расширить функциональность кода без лишней возни и дублирования, декораторы в Python — та самая волшебная палочка, которую вы искали. По сути, это. . .
Реализация многопоточных сетевых серверов на Python
py-thonny 16.05.2025
Когда сталкиваешься с необходимостью писать высоконагруженные сетевые сервисы, выбор технологии имеет критическое значение. Python, со своей элегантностью и высоким уровнем абстракции, может. . .
C# и IoT: разработка Edge приложений с .NET и Azure IoT
UnmanagedCoder 16.05.2025
Мир меняется прямо на наших глазах, и интернет вещей (IoT) — один из главных катализаторов этих перемен. Если всего десять лет назад концепция "умных" устройств вызывала скептические улыбки, то. . .
Гибридные квантово-классические вычисления: Примеры оптимизации
EggHead 16.05.2025
Гибридные квантово-классические вычисления — это настоящий прорыв в подходах к решению сложнейших вычислительных задач. Представьте себе союз двух разных миров: классические компьютеры, с их. . .
Использование вебсокетов в приложениях Java с Netty
Javaican 16.05.2025
HTTP, краеугольный камень интернета, изначально был спроектирован для передачи гипертекста с минимальной интерактивностью. Его главный недостаток в контексте современных приложений — это. . .
Реализация операторов Kubernetes
Mr. Docker 16.05.2025
Концепция операторов Kubernetes зародилась в недрах компании CoreOS (позже купленной Red Hat), когда команда инженеров искала способ автоматизировать управление распределёнными базами данных в. . .
Отражение в C# и динамическое управление типами
stackOverflow 16.05.2025
Reflection API в . NET — это набор классов и интерфейсов в пространстве имён System. Reflection, который позволяет исследовать и манипулировать типами, методами, свойствами и другими элементами. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru