Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 19.10.2022
Сообщений: 43

Заменить нулем каждую серию массива, длина которой меньше L

17.02.2023, 13:51. Показов 926. Ответов 8

Студворк — интернет-сервис помощи студентам
Дано целое число L> 1 и целочисленный массив размера N. Заменить каждую серию массива, длина которой меньше L, на один элемент с нулевым значением. Серия - это группа подряд идущих одинаковых элементов, а длиной серии − количество этих элементов (длина серии может быть равна 1).
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.02.2023, 13:51
Ответы с готовыми решениями:

Заменить каждую серию массива, длина которой меньше L, на один элемент с нулевым значением
Дано целое число L (>1) и целочисленный массив размера N. Заменить каждую серию массива, длина которой меньше L, на один элемент с...

Заменить каждую серию массива
Дано целое число L (> 1) и целочисленный массив размера N. Заменить каждую серию массива, длина которой меньше L, на последний элемент...

Заменить каждую серию массива, длина которой меньше L, на один элемент с нулевым значением
Здравствуйте! Помогите в решении следующей задачи, пожаалуйста Дано целое число L (> 1) и целочисленный массив размера N. ...

8
184 / 72 / 35
Регистрация: 09.05.2022
Сообщений: 387
17.02.2023, 15:56
Python
1
2
3
4
5
6
7
8
9
10
11
12
def replace_series_with_zero(arr, L):
    n = len(arr)
    i = 0
    while i < n:
        j = i
        while j < n and arr[j] == arr[i]:
            j += 1
        if j - i < L:
            for k in range(i, j):
                arr[k] = 0
        i = j
    return arr
пример для использования:
Python
1
2
3
4
arr = [1, 2, 2, 2, 3, 3, 4, 5, 5, 5, 5, 5, 6, 7, 7]
L = 3
new_arr = replace_series_with_zero(arr, L)
print(new_arr)  # Output: [0, 0, 0, 0, 3, 3, 4, 0, 0, 0, 0, 0, 6, 7, 7]
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38203 / 21135 / 4310
Регистрация: 12.02.2012
Сообщений: 34,740
Записей в блоге: 14
18.02.2023, 10:16
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
def task(arr,L):
    prev=[arr[0]]
    res=[]
    for curr in arr[1:]:
        if prev[0] == curr:
            prev.append(curr)
        else:
            lp=len(prev)
            if (lp==1) or (lp >= L):
                res.extend(prev)
            else: 
                res.append(0)
            prev=[curr]
 
    lp=len(prev)
    if (lp==1) or (lp >= L):
        res.extend(prev)
    else: 
        res.append(0)
            
    return res
    
print(task([1,2,2,2,3,3,3,3,4,5,2,1,1],3))
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
18.02.2023, 10:57
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
from itertools import groupby
 
 
def task(arr, L):
    res = []
    for k, g in groupby(arr):
        *g, = g
        if len(g) < L:
            res.append(0)
        else:
            res.extend(g)
    return res
 
 
print(task([1, 2, 2, 2, 3, 3, 3, 3, 4, 5, 2, 1, 1], 3))
Добавлено через 42 секунды
Bash
1
[0, 2, 2, 2, 3, 3, 3, 3, 0, 0, 0, 0]
1
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38203 / 21135 / 4310
Регистрация: 12.02.2012
Сообщений: 34,740
Записей в блоге: 14
18.02.2023, 16:13
eaa, я ждал этого ответа!
1
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
18.02.2023, 16:27
Catstail, а я ждал подходящего момента, чтобы написать его
1
 Аватар для Aviz__
2759 / 2066 / 509
Регистрация: 17.02.2014
Сообщений: 9,492
18.02.2023, 18:58
нахождение последовательности 123123 в списке, что ниже интересней
Python
1
[2, 2, 1, 2, 3, 1, 2, 3, 0, 1, 3, 4, 5, 2, 1, 1]
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
20.02.2023, 14:03
Цитата Сообщение от Aviz__ Посмотреть сообщение
нахождение последовательности 123123 в списке
Python
1
2
3
4
import re
 
lst = [2, 2, 1, 2, 3, 1, 2, 3, 0, 1, 3, 4, 5, 2, 1, 1]
print(max(re.findall(r'(?:(?:, )?1, 2, 3\b)+', str(lst)), key=len).strip(', '))
0
 Аватар для Aviz__
2759 / 2066 / 509
Регистрация: 17.02.2014
Сообщений: 9,492
20.02.2023, 15:05
Цитата Сообщение от iSmokeJC Посмотреть сообщение
1, 2, 3
приколист! 123 заранее не известны) нужно найти 123123, 22 и 11.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.02.2023, 15:05
Помогаю со студенческими работами здесь

Заменить каждую серию массива, длина которой меньше L, на один элемент с нулевым значением
помогите! 1) Дано целое число L (&gt;L) и целочисленный массив размера N. Заменить каждую серию массива, длина которой меньше L, на один...

Заменить каждую серию массива, длина которой меньше L, на один элемент с нулевым значением
Нуждаюсь в совете мудрых . . . 1)Дано целое число L и целочисленный массив размера N. Заменить каждую серию массива, длина которой...

Заменить каждую серию массива, длина которой меньше L, на один элемент с нулевым значением
Дано целое число L (&gt; 1) и целочисленный массив размера N. Заменить каждую серию массива, длина которой меньше L, на один элемент с нулевым...

Дано целое число L (>1) и целочисленный массив размера N. Заменить каждую серию массива, длина которой меньше L, на один
Дано целое число L (&gt;1) и целочисленный массив размера N. Заменить каждую серию массива, длина которой меньше L, на один элемент с...

Дано целое число L> 1 и целочисленный массив размера N. Заменить каждую серию массива, длина которой меньше L, на один э
Дано целое число L (&gt;1) и целочисленный массив размера N. Заменить каждую серию массива, длина которой меньше L, на один элемент с...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru