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

Удалить из массива все элементы, встречающиеся ровно два раза - C++

Восстановить пароль Регистрация
 
Romantikkk
0 / 0 / 0
Регистрация: 19.10.2012
Сообщений: 144
05.11.2012, 17:42     Удалить из массива все элементы, встречающиеся ровно два раза #1
помогите, пожалуйста, как написать код в с++?

Дан целочисленный массив размера N. Удалить из массива все элементы, встречающиеся ровно два раза.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.11.2012, 17:42     Удалить из массива все элементы, встречающиеся ровно два раза
Посмотрите здесь:

C++ Удалить из массива все элементы, встречающиеся ровно n раз
C++ Найти все числа встречающиеся в массиве P строго два раза (не упорядочивая самого массива).
C++ Подправьте задачу (удалить из массива элементы которые встречаются ровно 2 раза)
C++ Из массива А удалить все элементы, которые встречаются в В ровно 2 раза
C++ дописать ( Из массива А удалить все элементы, которые встречаются в В ровно 2 раза. Из В переписать в С те элементы, которые совпадают с оставшимися)
Вывести элементы массива, которые повторяются ровно два раза C++
C++ Из массива А удалить те элементы, встречающиеся и в массиве А и в массиве В хотя бы два раза
Определить элементы массива, которые входят в него ровно два раза C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
David Sylva
 Аватар для David Sylva
1281 / 943 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
05.11.2012, 18:09     Удалить из массива все элементы, встречающиеся ровно два раза #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
32
#include <iostream> 
 
int main() 
{ 
    int array[12] = { 1, 2, 3, 3, 5, 6, 6, 7, 8, 8, 8, 9  }; 
    int count = 0; 
    int i, j, a;  
    int n = 12;
 
    for ( i = 0; i < n; i++) 
    { 
        for ( j = 1; j < n; j++) 
        { 
            if(array[i] == array[j]) 
                count++; 
        } 
        if(count == 2) 
        { 
            for ( a = i; a < n; a++) 
            { 
                array[a] = array[a+2]; 
            } 
            n = n - 2;  
            i--;
        } 
        count = 0; 
    } 
 
    for ( i = 0; i < n; i++) 
        std::cout << array[i] << " "; 
    std::cout << std::endl;
}
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
05.11.2012, 18:46     Удалить из массива все элементы, встречающиеся ровно два раза #3
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
32
33
34
35
36
37
38
39
40
41
#include <iostream> 
 
int main() 
{ 
    int array[12] = { 1, 6, 2, 3, 5, 6, 7, 3, 8, 8, 8, 9  }; 
    int count = 0; 
    int i, j, a;  
    int n = 12;
 
    for ( i = 0; i < n; i++) 
    { 
        for ( j = 0; j < n; j++) 
        { 
            if(array[i] == array[j])
            {
                count++; 
                a=j;
            }
        } 
        if(count == 2) 
        { 
            for (j = a; j < n-1; j++) 
            { 
                array[j] = array[j+1]; 
            } 
            n--;
            for (j = i; j < n-1; j++) 
            { 
                array[j] = array[j+1]; 
            }
            n--;  
            i--;
        } 
        count = 0; 
    } 
 
    for ( i = 0; i < n; i++) 
        std::cout << array[i] << " "; 
    std::cout << std::endl;
    return 0;
}
Yandex
Объявления
05.11.2012, 18:46     Удалить из массива все элементы, встречающиеся ровно два раза
Ответ Создать тему
Опции темы

Текущее время: 22:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru