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

Написать программу, которая сжимает серии списка

31.10.2020, 18:14. Показов 3526. Ответов 3

Author24 — интернет-сервис помощи студентам
Написать программу, которая сжимает серии списка, состоящего из
единиц и нулей по следующему принципу:
например, список [0,0,0,0,1,1,1,1,1,1,1,0,0,1,1,1,1] преобразуется в [4,7,2,4]
(т.к. начинается с нуля, то сразу записывается количество элементов первой серии)
а список [1,1,1,0,0,0,0,0,0,0] преобразуется в [0,3,7] (т.к. первая серия - это
единицы, то первый элемент преобразованного списка 0).
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.10.2020, 18:14
Ответы с готовыми решениями:

Написать программу на c++, которая сжимает серии массива
Написать программу на c++, которая сжимает серии массива, состоящего из единиц и нулей по...

Написать программу оптимизации двоичного кода, которая сжимает серии повторяющихся цифр
Написать программу оптимизации двоичного кода, которая сжимает серии повторяющихся цифр, формируя...

Написать программу которая будет собирать информацию о расходных материалах сетевых принтеров серии XEROX WorkCentr серии 5225 и 5325
Программа должна работать с ип адресами сетевых принтеров, и получать информацию о расходных...

Написать программу, которая «сжимает» целочисленный массив из 10 элементов, удаляя из него элементы, меньше заданной величины.
Написать программу, которая «сжимает» целочисленный массив из 10 элементов, удаляя из него...

написать программу которая "сжимает" заданную последовательность...
написать программу которая "сжимает" заданную последовательность путем удаления из неё элементов...

3
Модератор
Эксперт функциональных языков программированияЭксперт Python
37295 / 20729 / 4272
Регистрация: 12.02.2012
Сообщений: 34,115
Записей в блоге: 14
01.11.2020, 11:55 2
Лучший ответ Сообщение было отмечено 1231331 как решение

Решение

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
def press(arr):
    if arr[0]==1:
        res=[0]
    else:
        res=[]
    count=1
    prev=arr[0]
    for curr in arr[1:]:
        if curr==prev:
            count+=1
        else:
            res.append(count)
            count=1
        prev=curr
    res.append(count)    
    return res
    
print(press([0,0,0,0,1,1,1,1,1,1,1,0,0,1,1,1,1]))    
print(press([1,1,1,0,0,0,0,0,0,0]))
1
Просто Лис
Эксперт Python
5964 / 3727 / 1097
Регистрация: 17.05.2012
Сообщений: 10,785
Записей в блоге: 9
01.11.2020, 13:02 3
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
def press(arr):
    result = []
    count = 0
    prev = 0
    for i in arr:
        if i == prev:
            count += 1
        else:
            result.append(count)
            count = 1
        prev = i
    result.append(count)    
    return result
    
assert press([0,0,0,0,1,1,1,1,1,1,1,0,0,1,1,1,1]) == [4, 7, 2, 4]
assert press([1,1,1,0,0,0,0,0,0,0]) == [0, 3, 7]
2
Эксперт Python
4640 / 2056 / 363
Регистрация: 17.03.2012
Сообщений: 10,139
Записей в блоге: 6
02.11.2020, 10:03 4
itertools.groupby
0
02.11.2020, 10:03
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.11.2020, 10:03
Помогаю со студенческими работами здесь

Написать функцию, которая сжимает массив и количество элементов
Написать функцию которая принимает указатель на динамический массив и количество элементов, функция...

Написать и протестировать функцию compress(), которая сжимает массив, удаляя из него элементы равные числу
Написать и протестировать функцию compress(), которая сжимает массив, удаляя из него элементы...

Написать программу, которая формирует два списка
Ребят, помогите пожалуйста, туплю я с этим Си++, 2 проги сдала осталась последняя. Из входного...

Написать программу, которая формирует два списка по правилу
Помогите написать задачу с помощью списков Из входного потока в произвольном порядке содержащим...

Массив: Написать программу, которая вычисляет сумму элементов списка.
Дано: список из 10 целых чисел. Требуется: написать программу, которая вычисляет сумму элементов...

Написать программу, которая проверяет, упорядочены ли элементы списка по алфавиту
. Написать программу, которая проверяет, упорядочены ли элементы списка по алфавиту.


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru