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

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

19.06.2008, 20:43. Показов 1555. Ответов 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 2
Лучший ответ Сообщение было отмечено как решение

Решение

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 Micronaut в Docker: контейнеризация с Maven и Jib
Javaican 16.03.2025
Когда речь заходит о микросервисной архитектуре на Java, фреймворк Micronaut выделяется среди конкурентов. Он создан с учётом особенностей облачных сред и контейнеров, что делает его идеальным. . .
Управление зависимостями в Java: Сравнение Spring, Guice и Dagger 2
Javaican 16.03.2025
Инъекция зависимостей (Dependency Injection, DI) — один из фундаментальных паттернов проектирования, который радикально меняет подход к созданию гибких и тестируемых Java-приложений. Суть этого. . .
Apache Airflow для оркестрации и автоматизации рабочих процессов
Mr. Docker 16.03.2025
Управление сложными рабочими процессами — одна из главных головных болей инженеров данных и DevOps-специалистов. Представьте себе: каждый день нужно запускать десятки скриптов в определенной. . .
Оптимизация приложений Java для ARM
Javaican 16.03.2025
ARM-архитектура переживает настоящий бум популярности в технологическом мире. Когда-то воспринимаемая исключительно как решение для мобильных устройств и встраиваемых систем, сегодня она штурмует. . .
Управление состоянием в Vue 3 с Pinia и Composition API
Reangularity 16.03.2025
Когда я начал работать с Vue несколько лет назад, мне казалось достаточным использовать простую передачу данных через props и события между компонентами. Однако уже на среднем по сложности проекте. . .
Введение в DevSecOps: основные принципы и инструменты
Mr. Docker 16.03.2025
DevSecOps - это подход к разработке программного обеспечения, который объединяет в себе принципы разработки (Dev), безопасности (Sec) и эксплуатации (Ops). Суть подхода заключается в том, чтобы. . .
GitHub Actions vs Jenkins: Сравнение инструментов CI/CD
Mr. Docker 16.03.2025
В этой битве за эффективность и скорость выпуска программных продуктов ключевую роль играют специализированные инструменты. Два гиганта в этой области — GitHub Actions и Jenkins — предлагают разные. . .
Реактивное программировани­е с Kafka Stream и Spring WebFlux
Javaican 16.03.2025
Реактивное программирование – это программная парадигма, ориентированная на потоки данных и распространение изменений. Она позволяет выражать статические или динамические потоки данных и. . .
Простая нейросеть на КуМир: Учебное пособие по созданию и обучению нейронных сетей
EggHead 16.03.2025
Искусственные нейронные сети — удивительная технология, позволяющая компьютерам имитировать работу человеческого мозга. Если вы хотя бы немного интересуетесь современными технологиями, то наверняка. . .
Исполнитель Кузнечик в КуМир: Решение задач
EggHead 16.03.2025
Среди множества исполнителей в системе КуМир особое место занимает Кузнечик — простой, но невероятно полезный виртуальный персонаж, который перемещается по числовой прямой, выполняя ваши команды. На. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru