-11 / 2 / 1
Регистрация: 22.09.2021
Сообщений: 97

Сумма чисел в строке

11.12.2021, 10:29. Показов 22477. Ответов 22
Метки нет (Все метки)

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

Формат ввода
Вводятся строки.

Формат вывода
Нужно вывести наименьшую из сумм чисел для строк, в которых больше всего чисел. Если строк с числами нет, то вывести -1.

Пример 1
Ввод:
Расстояние до Луны в среднем 384000 км.
До Плутона со скоростью 8000 км/с лететь около 750000 с.
Марсианские сутки длятся 24 часа 37 минут.
Земная ось наклонена под углом 23 градуса.

Вывод:
61

Пример 2
Ввод:
Путь до Марса занимает не менее полугода.
Ближайшая к нам звезда - Проксима Центавра.
Температура на Венере позволяет легко плавить олово.

Вывод:
-1

Примечания:
Числа в строках только целые.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.12.2021, 10:29
Ответы с готовыми решениями:

Сумма чисел в строке
Доброго времени суток. На курсе задали задачу: В виде строки записано арифметическое выражение, например: "10 + 25 - 12" или...

Сумма чисел в строке
Строки могут быть разными, с числами и без. Среди множества вводимых строк нужно выбрать те, в которых больше всего чисел, а среди...

Сумма чисел в строке
Добрый вечер, В строке могут встречаться цифры и иные символы. Числом будем считать последовательность цифр, которая не может быть...

22
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
11.12.2021, 11:45
Python
1
2
3
4
5
6
7
8
9
10
11
import re
 
s = '''
Расстояние до Луны в среднем 384000 км.
До Плутона со скоростью 8000 км/с лететь около 750000 с.
Марсианские сутки длятся 24 часа 37 минут.
Земная ось наклонена под углом 23 градуса.
'''.strip()
 
lst =[list(map(int, re.findall(r'\d+', i))) for i in s.split('\n')]
print(min(map(sum, filter(lambda x: len(x) == len(max(lst, key=len)), lst))) if re.search(r'\d', s) else -1)
1
enx
11.12.2021, 13:30

Не по теме:

iSmokeJC, я кстати прекратил помощь для данного ТС, но вот все думаю, представляешь какие глаза от его прогресса у наставников в Яндексе?

0
11.12.2021, 13:36

Не по теме:


Цитата Сообщение от enx Посмотреть сообщение
представляешь какие глаза от его прогресса у наставников в Яндексе
Они прекрасно в курсе, откуда ученики это все списывают. Поэтому для конкретно взятого ТСа мой ответ вообще никакой ценности не имеет. А тому, кто действительно учится - глядишь и пригодится что

0
 Аватар для Semen-Semenich
5237 / 3481 / 1176
Регистрация: 21.03.2016
Сообщений: 8,310
11.12.2021, 13:49

Не по теме:

Цитата Сообщение от enx Посмотреть сообщение
представляешь какие глаза от его прогресса у наставников в Яндексе?
я представляю глаза начальника или того отдела в который его может быть возьмут с дипломом ял.

1
11.12.2021, 14:06

Не по теме:

Цитата Сообщение от enx Посмотреть сообщение
представляешь какие глаза от его прогресса у наставников в Яндексе?
к сожалению большинство преподавателей там такого же уровня...

0
3 / 3 / 0
Регистрация: 14.09.2021
Сообщений: 31
22.12.2021, 10:02
Строки могут быть разными, с числами и без. Среди множества вводимых строк нужно выбрать те, в которых больше всего чисел, а среди отобранных ту, в которой их сумма минимальна.

Напишите такую программу.
Формат ввода
Вводятся строки.

Формат вывода
Нужно вывести наименьшую из сумм чисел для строк, в которых больше всего чисел. Если строк с числами нет, то вывести -1.
Пример 1
Ввод
Code
1
2
3
4
Расстояние до Луны в среднем 384000 км.
До Плутона со скоростью 8000 км/с лететь около 750000 с.
Марсианские сутки длятся 24 часа 37 минут.
Земная ось наклонена под углом 23 градуса.
Вывод
Code
1
61
Пример 2
Ввод
Code
1
2
3
Путь до Марса занимает не менее полугода.
Ближайшая к нам звезда - Проксима Центавра.
Температура на Венере позволяет легко плавить олово.
Вывод
Code
1
-1
0
enx
 Аватар для enx
1190 / 766 / 277
Регистрация: 05.09.2021
Сообщений: 1,772
22.12.2021, 10:29
Поскольку формат ввода ты не описал, с ним покумекай сам.


Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
def f(txt):
    res = {}
    for i in txt.splitlines():
        tmp = list(filter(lambda x: x.isdigit(), i.split()))
        res[len(tmp)] = res.get(len(tmp), []) + [sum(map(int, tmp))]
    cnt = min(res[max(res)])
    return cnt if cnt else -1
 
 
txt = '''Расстояние до Луны в среднем 384000 км.
         До Плутона со скоростью 8000 км/с лететь около 750000 с.
         Марсианские сутки длятся 24 часа 37 минут.
         Земная ось наклонена под углом 23 градуса.'''
print(f(txt))
 
txt = '''Путь до Марса занимает не менее полугода.
         Ближайшая к нам звезда - Проксима Центавра.
         Температура на Венере позволяет легко плавить олово.'''
print(f(txt))
Добавлено через 13 секунд
Bash
1
2
61
-1
0
3 / 3 / 0
Регистрация: 14.09.2021
Сообщений: 31
22.12.2021, 10:54
К сожалению, я дурак, который не сможет переделать так, чтобы был ввод
0
enx
 Аватар для enx
1190 / 766 / 277
Регистрация: 05.09.2021
Сообщений: 1,772
22.12.2021, 10:57
egor_piunov, ну тогда сочувствую, потому что гадать о том, как тебе приходят эти строки - я не буду.
0
3 / 3 / 0
Регистрация: 14.09.2021
Сообщений: 31
22.12.2021, 11:03
стандартный ввод. как тот же input().
0
enx
 Аватар для enx
1190 / 766 / 277
Регистрация: 05.09.2021
Сообщений: 1,772
22.12.2021, 11:11
egor_piunov, а признак остановки ввода какой? Пустая строка, число строк, сентинель какой-то? Или работаем с неизвестным вводом, по принципу, все что прилетело?
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
22.12.2021, 11:13

Не по теме:

Цитата Сообщение от enx Посмотреть сообщение
сентинель
На форуме мат запрещен!


0
enx
 Аватар для enx
1190 / 766 / 277
Регистрация: 05.09.2021
Сообщений: 1,772
22.12.2021, 11:18
iSmokeJC, точно, я забыл...

Добавлено через 2 минуты
iSmokeJC, регулярочку ему дай, для комбо, ты вроде уже писал этот кейс)))
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
22.12.2021, 11:19
Цитата Сообщение от enx Посмотреть сообщение
регулярочку ему дай
Это несложно, однако совсем не отменяет вопроса
Цитата Сообщение от enx Посмотреть сообщение
а признак остановки ввода какой?
0
3 / 3 / 0
Регистрация: 14.09.2021
Сообщений: 31
22.12.2021, 11:43
я так понял, через stdin нужно вводить. там неопределённое кол-во строк
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
22.12.2021, 11:45

egor_piunov, и? До каких пор будем ожидать следующую строку ввода? До второго пришествия?
Цитата Сообщение от enx Посмотреть сообщение
признак остановки ввода какой?
0
enx
 Аватар для enx
1190 / 766 / 277
Регистрация: 05.09.2021
Сообщений: 1,772
22.12.2021, 11:47
iSmokeJC, да пустая строка там, sys.stdin или open(0)

egor_piunov, иди, проверяй:


Python
1
2
3
4
5
6
7
8
9
10
def f(txt):
    res = {}
    for i in txt:
        tmp = list(filter(lambda x: x.isdigit(), i.split()))
        res[len(tmp)] = res.get(len(tmp), []) + [sum(map(int, tmp))]
    cnt = min(res[max(res)])
    return cnt if cnt else -1
  
txt = open(0).readlines()
print(f(txt))
0
3 / 3 / 0
Регистрация: 14.09.2021
Сообщений: 31
22.12.2021, 11:57
Ошибка
Traceback (most recent call last):
File "/temp/executing/test.py", line 14, in <module>
exec(sys.stdin.read().strip())
OSError: [Errno 9] Bad file descriptor
make: *** [run] Error 1
Ввод
Расстояние до Луны в среднем 384000 км.
До Плутона со скоростью 8000 км/с лететь около 750000 с.
Марсианские сутки длятся 24 часа 37 минут.
Земная ось наклонена под углом 23 градуса.
Ожидаемый результат
61
Вывод
61
Makefile:5: recipe for target 'run' failed
Сообщение
Completion status: ABNORMAL_EXIT
Term sig: null
Error code: 2

Добавлено через 3 минуты
там не по пустой строке. там завершение программы идёт по EOF
0
2 / 2 / 0
Регистрация: 13.03.2023
Сообщений: 23
22.03.2023, 13:34
Доработанный код
Python
1
2
3
4
5
6
import re
import sys
 
s = list(map(str, sys.stdin))
lst =[list(map(int, re.findall(r'\d+', i))) for i in s]
print(min(map(sum, filter(lambda x: len(x) == len(max(lst, key=len)), lst))) if re.search(r'\d+', str(s)) else -1)
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.03.2023, 13:34
Помогаю со студенческими работами здесь

Сумма чисел в строке
Задана строка, содержащая целые числа и слова, разделенные пробелами (одним или несколькими). Определить сумму целых чисел в строке. ...

Сумма чисел в строке
Есть строка 567 Как посчитать сумму чисел в строке ? Или разбить потом использовать sum

Сумма чисел в строке
Мне нужно суммировать по 2 элемента строки string (1 1 1 1 0 0 1 0 0 0 1 0 0 0 1 0 ) поочередно. Если больше единицы, то выводим 0, единица...

Сумма всех чисел в строке
Сумма всех чисел в строке. Кто нибудь может это транслировать на C++ #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include...

Сумма отдельных чисел в строке
Задано случайная строка . Подсчитать сумму отдельных чисел в строке


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

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

Новые блоги и статьи
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru