С Новым годом! Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
-2 / 6 / 5
Регистрация: 19.01.2022
Сообщений: 201

Списковый блок

06.04.2022, 18:17. Показов 1558. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В одном языке программирования массив задается следующим образом:

Начало и конец массива обозначается открытой и закрытой фигурной скобкой, соответственно.
Внутри фигурных скобок, есть (возможно, ноль) значений, разделенных запятыми.
Каждое значение может быть словом из строчных букв английского алфавита или другим массивом.
Примеры массивов: {}, {a,b,c}, {abc,x,{qb,nn},p}.

Вам дан массив в описанном формате, без пробелов и переводов строки. Ваша задача —отформатировать его следующим образом:

Каждая строка и каждая фигурная скобка должны находиться в отдельной строке.
Запятые находятся на той же строке, что и элемент (строка или фигурная скобка) перед ней.
После открывающейся фигурной скобки отступ увеличивается на 2 пробела.
Перед закрывающейся фигурной скобки отступ уменьшается на 2 пробела.
Изучите примеры, чтобы лучше понять, как должен выглядеть отформатированный массив.



Входные данные:
Первая строка ввода содержит строку s, представляющую собой описание массива. Длина строки не превышает 1000 символов.



Выходные данные:
Выведите отформатированный массив.

Примеры:
1) входные данные
{odin,dva,tri}
выходные данные
{
odin,
dva,
tri
}


2) входные данные
{}
выходные данные
{
}

3)входные данные
{stroka}
выходные данные
{
stroka
}

4)входные данные
{a,b,{c,d},e,{}}
выходные данные
{
a,
b,
{
c,
d
},
e,
{
}
}
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.04.2022, 18:17
Ответы с готовыми решениями:

Как программно добавить Value в списковый элемент управления?
With cboChRechi.Items .Add ('Существительное') .Add ('Прилагательное') .Add ('Глагол') End WithНо кроме этого мне...

Списковый алгоритм решения задачи о сумме подмножества
Сделала две программы на matlab, вычисляющие сумму подмножества. На входе - множество и желаемая сумма, на выходе - сумма подмножества,...

При наведении на один блок, появляется другой блок и прячется если на блок не наводить
Как тут

4
-2 / 6 / 5
Регистрация: 19.01.2022
Сообщений: 201
09.04.2022, 13:28  [ТС]
Задача еще актуальна, вот примеры на скрне
Миниатюры
Списковый блок  
0
Эксперт Python
8848 / 4500 / 1864
Регистрация: 27.03.2020
Сообщений: 7,315
09.04.2022, 17:50
Лучший ответ Сообщение было отмечено shinzin как решение

Решение

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
s = '{a,b,{c,d},e,{}}'
 
k, res = 2, '{'
 
for i in range(1, len(s)):
    if s[i] == '}':
        k -= 2
    if s[i] in '{}' or s[i-1] in ',{':
        res += '\n' + ' '*k
    if s[i] == '{':
        k += 2
    res += s[i]
print(res)
2
0 / 0 / 0
Регистрация: 20.02.2022
Сообщений: 22
Записей в блоге: 4
10.04.2022, 14:39
не работает
0
-2 / 6 / 5
Регистрация: 19.01.2022
Сообщений: 201
10.04.2022, 16:30  [ТС]
Конкретно здесь наверно как-то так будет:


Python
1
2
3
4
5
6
7
8
9
10
11
f = input()
a, b = 2, '{'
for n in range(1, len(f)):
    if f[n] == '}':
       a -= 2
    if f[n] in '{}' or f[n - 1] in ',{':
        b = b + '\n' + ' ' * a
    if f[n] == '{':
        a += 2
    b += f[n]
print(b)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.04.2022, 16:30
Помогаю со студенческими работами здесь

Как сделать чтобы при наведении на блок 1 скрывался навсегда блок 2
Здравствуйте! #block_1:hover #block_2{display:none;} Сейчас у меня так стоит, навожу мышь на блок 1 - блок 2 исчезает пока мышка на...

Подкорректировать блок-схему кода(код+блок-схема есть)
Нужна помощь, в доработке блок-схемы.. Наброски сделал, но чувствую 10000% не совсем, а может, и вообще не правильно)) Вот сам код,мои...

flex 1 1 auto; блок не увеличивается / не отодвигает нижний блок до низу
https://codepen.io/Fodorov/pen/xxPwJBX <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta...

Когда блок видим и нажимаешь на ту же самую ссылку (блок убирается)
Доброе утро, подскажите как сделать, в этом коде реализована смена блока по клику (заменяя друг друга), но когда делаешь повторно клик по...

Заменить блок с полями для авторизации на блок с данными пользователя
Решил немного дизайн получше сделать. Когда я успешно авторизуюсь, так мне сайт высвечивает: Подключён! Здравствуйте, name! ...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru