Форум программистов, компьютерный форум CyberForum.ru

Дан целочисленный массив размера N. Удалить из массива все одинаковые элементы, оставив их последние вхождения - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Такой sizeof - это нормально? http://www.cyberforum.ru/cpp-beginners/thread1302718.html
sizeof(PVOID) 8 байт, а sizeof (long int) 4 байта.
C++ Ошибка преобразования класса Добрый день! Уважаемые, помогите пожалуйста найти ошибку. #include <iostream> #include <stdio.h> #include <string.h> #include <locale> using namespace std; class sotr{ private: http://www.cyberforum.ru/cpp-beginners/thread1302714.html
Дано вещественное x. Вычислить z =f( x ) C++
Задачу надо переписывать на форум. Редактор формул внизу страницы!
Чем дебажить x64? C++
Среда code blocks, компилятор tdm64-gcc-4.8.1-3. не берёт уникодовые строки:.
C++ Вывод больших чисел http://www.cyberforum.ru/cpp-beginners/thread1302683.html
Неправильно выводится номер телефона (номер телефона с 11 цифрами).Помогите исправить class.h #ifndef CLASS_H #define CLASS_H // класс "Структура МИИТа" class MIIT { public: void menu();
C++ Заполнить массив с клавиатуры Простое задание, но я немного не понимаю "Дан одномерный массив, состоящий из N целочисленных элементов. Введите массив с клавиатуры." подробнее

Показать сообщение отдельно
BEAVIS474
0 / 0 / 0
Регистрация: 16.11.2014
Сообщений: 2
17.11.2014, 08:16     Дан целочисленный массив размера N. Удалить из массива все одинаковые элементы, оставив их последние вхождения
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 <iostream>
#include <ctime>
 
using namespace std;
int main()
{
  setlocale(LC_ALL, "rus");
  int n, i;
  time_t t;
  cout<<"Введите количество элементов массива: ";
  cin>>n;
  int *m = new int[n];
  int *p = new int[n];
  srand((unsigned)(&t));
  cout<<"исходный массив: \n";
  for(i=0;i<n;++i)
  {
     m[i] = rand() % 2 + 1;
     cout<<" "<<m[i]<<" ";
  }
  for(i = n - 1; i>=0; --i)
    if (m[i] != m[i - 1])
       p[i] =m[i];
  cout<<" \n Преобразованный массив: ";
  for(i = 0; i< n; ++i)
    if (p[i] == 1 || p[i] ==2)
      cout<<" " << p[i];
  delete[] m;
  system("pause");
  return 0;
}


Этот код удаляет первые вхождения , а как сделать, чтобы удалял последние?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 07:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru