Посмотрите задачу на С++

За вознаграждение или нахаляву (если повезёт)

Модераторы: Хыиуду, MOTOCoder, Medved, dr.Jekill

airyashov
Сообщения: 441
Зарегистрирован: 02 ноя 2007, 10:31

Anton_XXX писал(а):Чет я непойму...

if ( (mas[i-1]<mas) && (mas<mas[i+1]))

например, дан одномерный массив: 5 0 1 7 0 6 1 0 5
по идеи, минимальный из неповторяющихся элементов = 6
а твое условие выдает элемент = 1

элемент "1" в этом массиве встречается 2 раза...!

Я думаю, надо вначале найти все равные элементы и записать их в дополнительную строку или столбец, а потом находить уже минимальный из неповторяющихся этих элементов...
на отсортированном массиве условие
Аватара пользователя
kapitay
Сообщения: 5
Зарегистрирован: 25 фев 2008, 11:15
Откуда: Moscow
Контактная информация:

Здравствуйте я тут недавно нашел одну задачу на массивы и мне стало интересно её решить! Поначалу показалось не очень сложной, а теперь когда вник в суть дела оказалось что она мне не под силу.. Помогите мне её решить (просто оочень интересн о) ВОТ СУТЬ ЗАДАЧИ: Дана последовательность целых чисел. Опредилить количество различных чисел этой последовательности.

Я решил что после того как вводим числа их нужно сначала отсортировать методом пузырьковой сортировки (чтобы вводимые числа выстроились в ряд по порядку) а потом сравнивать рядом стоящие числа....

P>S/ Задачка должна решаться с помощью массива
Зарание спасибо хоть за какуюнибудь идею.. :confused: :rolleyes:
Anton_XXX
Сообщения: 108
Зарегистрирован: 21 дек 2006, 17:15

Кто поможет отсортировать двумерный массив на С++ по возрастанию...
т.е

допустим дан массив...
2 5 8 9
3 0 4 7
6 1 2 9

отсортировать так:

0 1 2 2
3 4 5 6
7 8 9 9

Не смог найти статьи сортировки...
Если кто знает... дайте ссылку!

Одномерные массивы я легко сортирую... а с двумерными у меня проблемма!

мдааа... даже стыдно стало!
Anton_XXX
Сообщения: 108
Зарегистрирован: 21 дек 2006, 17:15

только сам способ сортировки... с комментариями если можно! пожалуйста!
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

Раздел "Алгоритмы", тема "Упорядочивание массива"
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Anton_XXX
Сообщения: 108
Зарегистрирован: 21 дек 2006, 17:15

спасибо большое!
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

В данном случае - перегнать все элементы двумерного массива в один одномерный, потом его упорядочить, а элементы упорядоченного по порядку переписать обратно в двумерный.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
BBB
Сообщения: 1298
Зарегистрирован: 27 дек 2005, 13:37

Хыиуду писал(а):В данном случае - перегнать все элементы двумерного массива в один одномерный, потом его упорядочить, а элементы упорядоченного по порядку переписать обратно в двумерный.
Или просто "распрямить" двумерный массив в одномерный, где каждый элемент имеет индекс (если считать, что массив 0-based): y*width + x.
Albor
Сообщения: 491
Зарегистрирован: 06 сен 2004, 13:34
Откуда: Днепропетровск

Если массив создаётся не динамически, то в памяти он располагается последовательно и его можно обрабатывать как одномерный. Поэтому совсем необязательно копировать, просто указать диапазон сортировки от 0 до МхN
Ответить