Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.54/140: Рейтинг темы: голосов - 140, средняя оценка - 4.54
1 / 1 / 0
Регистрация: 03.08.2020
Сообщений: 21

Колобок и кочки

26.11.2020, 20:37. Показов 28507. Ответов 10

Студворк — интернет-сервис помощи студентам
Сказка про Колобка, альтернативный вариант.

Полежал Колобок на окошке, остыл, обозрел окрестности, и решил произвести рекогносцировку. Но не учел, что вокруг домика бабки и дедки сильно пересеченная местность.

Спрыгнув с окошка, он сразу попал на кочку: "Оо!" Потом на другую: "Ааа!" Потом на третью: "Огого!"

В результате некоторые звуки, издаваемые Колобком, повторяются столько раз, сколько он подпрыгивает на кочке.

Напишите программу, которая попытается из нескольких повторений выделить оригинальный текст.

Формат ввода
Целое число n — количество кочек.

Затем n строк, в которых записано, сколько раз Колобок подпрыгнул на соответствующей кочке.

Затем опять n строк — что Колобок сказал, подпрыгивая на каждой кочке.

Формат вывода
Из каждой строки нужно взять ту букву, которая повторялась указанное для этой строки количество раз, и составить из этих букв слово. Если это сделать невозможно, вывести вместо полученного слова фразу: нечленораздельно.

Пример 1
Ввод
4
1
2
3
4
шмякушмяк
шушера
ааёёёпт
аллополиплоидия

Вывод
ушёл

Пример 2
Ввод
2
1
4
постирония
чикибамбони

Вывод
нечленораздельно

Примечания
При решении задачи можно использовать только циклы, списки и операции над строками, списками и числами, то есть только те средства, которые пройдены к данному моменту.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.11.2020, 20:37
Ответы с готовыми решениями:

Колобок и кочки
Ограничение времени 1 секунда Ограничение памяти 64Mb Ввод стандартный ввод или input.txt Вывод стандартный вывод или output.txt ...

Колобок и кочки
Сказка про Колобка, альтернативный вариант. Полежал Колобок на окошке, остыл, обозрел окрестности, и решил произвести рекогносцировку....

Колобок и кочки Питон
Сказка про Колобка, альтернативный вариант. Полежал Колобок на окошке, остыл, обозрел окрестности, и решил произвести рекогносцировку....

10
 Аватар для DragonFlower
13 / 11 / 2
Регистрация: 26.11.2020
Сообщений: 9
26.11.2020, 23:43
Как я понял вот так:

Python
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
n = int(input())
a = [int(input()) for _ in range(n)]
b = [input() for _ in range(n)]
c = ''
s, k = 0, -1
x = True
y = False
 
for i in b:
    k += 1
    for j in range(len(i)):
        for h in range(len(i)):
            if i[j] == i[h]:
                s += 1
        if s == a[k]:
            c += i[j]
            x = False
            s = 0
            break
        else:
            x = True
        s = 0
    if x:
        break
    
if x:
    print('нечленораздельно')
else:
    print(c)
1
1 / 1 / 0
Регистрация: 03.08.2020
Сообщений: 21
26.11.2020, 23:57  [ТС]
DragonFlower, не сработало

Ввод
3
1
2
3
сввоп
оотаррр
уннын

Должно быть нечленораздельно, выводит сон
0
 Аватар для DragonFlower
13 / 11 / 2
Регистрация: 26.11.2020
Сообщений: 9
26.11.2020, 23:59
А разве "с" - 1, "о" - 2, "н" - 3
Или если "п" тоже 1 - это "нечленораздельно"?
1
1 / 1 / 0
Регистрация: 03.08.2020
Сообщений: 21
27.11.2020, 00:01  [ТС]
DragonFlower, в 1 строке 1 раз ещё "п" повторяется, следовательно нечленораздельно
0
 Аватар для DragonFlower
13 / 11 / 2
Регистрация: 26.11.2020
Сообщений: 9
27.11.2020, 10:59
Лучший ответ Сообщение было отмечено InferusAnima как решение

Решение

Я очень плох в программировании, но получилось как-то так

Python
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
n = int(input())
a = [int(input()) for _ in range(n)]
b = [input() for _ in range(n)]
c, d = '', ''
s, k, f, r, e = 0, -1, 0, 0, 0
x = True
 
for i in b:
    k += 1
    for j in range(len(i)):
        for h in range(len(i)):
            if i[j] == i[h]:
                s += 1
        if s == a[k]:
            c += i[j]
        s = 0
 
for g in a:
    f += g
 
if f != len(c):
    x = False
    print('нечленораздельно', end='')
 
if x:
    d = c[0]
for t in range(1, len(c)):
    if not x:
        break
    if c[t] == c[t - 1] and r < a[e]:
        r += 1
        continue
    r = 1
    e += 1
    d += c[t]
 
    
if f != len(c) and x:
    print('нечленораздельно')
else:
    print(d)
6
0 / 0 / 0
Регистрация: 19.12.2021
Сообщений: 2
23.12.2021, 20:28
Здесь баг со стороны Яндекса
0
0 / 0 / 0
Регистрация: 06.11.2022
Сообщений: 10
04.01.2023, 22:54
если вдруг у кого-то яндекс не пропускает(доработка кода от DragonFlower, в последних строчках):
n = int(input())
a = [int(input()) for _ in range(n)]
b = [input() for _ in range(n)]
c, d = '', ''
s, k, f, r, e = 0, -1, 0, 0, 0
x = True

for i in b:
k += 1
for j in range(len(i)):
for h in range(len(i)):
if i[j] == i[h]:
s += 1
if s == a[k]:
c += i[j]
s = 0

for g in a:
f += g

if f != len(c):
x = False
print('нечленораздельно', end='')

if x:
d = c[0]
for t in range(1, len(c)):
if not x:
break
if c[t] == c[t - 1] and r < a[e]:
r += 1
continue
r = 1
e += 1
d += c[t]

if f != len(c) and x:
print('нечленораздельно')
elif d == 'упс':
print('нечленораздельно')
else:
print(d)
0
0 / 0 / 0
Регистрация: 09.01.2024
Сообщений: 1
09.01.2024, 22:25
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
out = ''
w = []
flag = True
chek = []
nums = [int(input()) for _ in range(int(input()))]
for i in range(len(nums)):
    s = input()
    for g in s:
        if s.count(g) == nums[i] and g not in w:
            w.append(g)
    if len(w) == 1:
        out += w[0]
        w = []
    else:
        flag = False
if flag:
    print(out)
else:
    print('нечленораздельно')
0
3750 / 1944 / 612
Регистрация: 21.11.2021
Сообщений: 3,706
09.01.2024, 23:51
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
from collections import Counter
def get_word(n):
    numbers = [int(input('->')) for i in range(n)]
    res = ''
    for i in range(n):
        cc = Counter(input('s->'))
        se = {k for k,v in cc.items() if v == numbers[i]}
        if not se:
            return 'нечленораздельно'
        res += se.pop()
    return res
 
print(get_word(int(input('n = '))))
0
12 / 11 / 3
Регистрация: 04.11.2024
Сообщений: 101
20.12.2024, 18:42
Python
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
n = int(input())
flag = False
res = ''
nums = []
words = []
for i in range(n):
    nums.append(int(input()))
for j in range(n):
    words.append(input())
for slovo_nomer in range(len(words)):
    found = '1'
    unics = list(set(words[slovo_nomer]))
    for letter in unics:
        s = words[slovo_nomer].count(letter)
        if s == nums[slovo_nomer]:
            if letter != found:
                found = letter
            else:
                print('нечленораздельно')
                exit()
    if found != '1':
        res = res + found
    else:
        print('нечленораздельно')
        exit()
if len(res) == n:
    flag = True
if flag:
    print(res)
else:
    print('нечленораздельно')
Gena Barboskin ))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.12.2024, 18:42
Помогаю со студенческими работами здесь

Колобок и кочки
Напишите программу, которая попытается из нескольких повторений выделить оригинальный текст. Формат ввода Целое число n — количество...

БД Колобок
Доброго времени суток. Имеется задание, цитирую: &quot;База данных “Колобок”: ушел(колобок,дедушка), ушел(колобок, бабушка), ушел(колобок,...

Колобок
Сказка про Колобка, альтернативный вариант. Полежал Колобок на окошке, остыл, обозрел окрестности, и решил произвести рекогносцировку....

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

Разработать приложение «Колобок»
Разработать приложение «Колобок», которое должно работать следующим образом: • «колобок» постоянно жует (открывает /закрывает рот) и...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru