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

Полезные ископаемые

04.12.2019, 19:01. Показов 6019. Ответов 24

Студворк — интернет-сервис помощи студентам
Геолог Борис работает на умном экскаваторе. После извлечения кубометра горной породы экскаватор проводит анализ и передаёт строку из N чисел, в которой записано, сколько в излечённом кубометре ценных элементов A1, A2, ..., AN. Последнее число в строке — процент примесей в породе, на который уменьшается содержание каждого ценного элемента.
Борис за день извлёк M кубометров породы. После рабочего дня он идёт к подрядчику и получает номер ценного элемента, за который подрядчик готов дать премию, равную количеству добытого элемента за день. Помогите Борису определить размер премии.

Формат ввода
Программа получает на вход число M — количество кубометров, которые за день добыл Борис.
В следующих M строках записаны числа — все, кроме последнего в каждой строке, показывают содержание в текущем кубометре ценных элементов, последнее — процент примесей. Длины строк могут отличаться.
В последней строке записано число i — номер элемента, за который выдаётся премия.
Все числа целые, не превышают 2*105.

Формат вывода
Программа должна вывести одно число — размер полученной премии.

Пример 1
Ввод
1
30 14 16 100 50
2
Вывод
7

Пример 2
Ввод
3
30 12 50
1 2 3 4 5 25
6 20
2
Вывод
7.5

Примечания
Лишние нули после запятой выводить не нужно (например, в первом тесте ответ 7.0, а во втором 7.500 будут неправильными).

Добавлено через 1 минуту
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
mast = []
for i in range(int(input())):
    mast.append([int(x) for x in input().split()])
number = int(input())
 
for i in range(len(mast)):
    if len(mast[i]) <= number:
        del mast[i]
 
number = sum([mast[i][number - 1] / 100 * (100 - mast[i][len(mast[i]) - 1]) for i in range(len(mast))])
 
if round(number, 1) == int(number):
    print(int(number))
else:
    print(number)
вот мой код но на 7 тесте пишет run-time-eeror
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.12.2019, 19:01
Ответы с готовыми решениями:

Полезные продукты
По ссылке https://yastatic.net/s3/lyceum/content/resources/ABBREV.csv можно скачать файл ABBREV.csv. Это – текстовый файл в кодировке...

Полезные продукты
По ссылке можно скачать файл ABBREV.csv. Это – текстовый файл в кодировке UTF-8, в котором записана таблица данных, а данные в строчках...

Полезные продукты
Скачайте файл http://anytask.s3.yandex.net/materials/28/ABBREV.xlsx. Файл создан департаментом сельского хозяйства США. Это таблица,...

24
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
05.12.2019, 09:32
Может, деление на ноль? Или пустой список?
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
05.12.2019, 09:56
скорее всего тут IndexError: list index out of range.

Добавлено через 2 минуты
например:
Ввод
3
30 12 50
1 2 3 4 5 25
6 20
10
0
18 / 13 / 5
Регистрация: 25.09.2016
Сообщений: 324
05.12.2019, 13:06
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
mined = [input().split() for i in range(int(input()))]
for el in mined:
    for i in range(len(el)):
        el[i] = int(el[i])
num = int(input())
total = 0
for block in mined:
    coeff = 1 - block[-1] / 100
    cleaned = []
    for ore in block:
        if ore != block[-1]:
            cleaned.append(ore * coeff)
    if len(cleaned) >= num:
        total += cleaned[num - 1]
print(total)
0
0 / 0 / 0
Регистрация: 29.11.2019
Сообщений: 27
05.12.2019, 15:52  [ТС]
Не работает failed test 6
0
18 / 13 / 5
Регистрация: 25.09.2016
Сообщений: 324
05.12.2019, 18:43
aleks12345678, А как вводите?
0
0 / 0 / 0
Регистрация: 05.12.2019
Сообщений: 28
05.12.2019, 21:19
Ты же понимаешь, что ты спалишься на антиплагиате?
0
0 / 0 / 0
Регистрация: 29.11.2019
Сообщений: 27
06.12.2019, 05:22  [ТС]
Wrong answer test 6
0
0 / 0 / 0
Регистрация: 29.11.2019
Сообщений: 27
06.12.2019, 05:36  [ТС]
Все числа всегда принимает а вот расчеты делает не правильные
Миниатюры
Полезные ископаемые  
0
18 / 13 / 5
Регистрация: 25.09.2016
Сообщений: 324
06.12.2019, 09:34
aleks12345678,
Пример 2:
Ввод
3
30 12 50
1 2 3 4 5 25
6 20
2
Вывод
7.5
Пример 1:
Ввод
1
30 14 16 100 50
2
Вывод
7.0
Все правильно
0
0 / 0 / 0
Регистрация: 29.11.2019
Сообщений: 27
06.12.2019, 13:17  [ТС]
какойто тест 10 не работает
0
18 / 13 / 5
Регистрация: 25.09.2016
Сообщений: 324
06.12.2019, 15:26
aleks12345678, Разбирайтесь, программа работает правильно
0
0 / 0 / 0
Регистрация: 29.11.2019
Сообщений: 27
06.12.2019, 16:07  [ТС]
так почему тест не правильный если программа работает правильно
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
06.12.2019, 16:33
aleks12345678, решение Вам не правильно потому что дали.

Добавлено через 2 минуты
Цитата Сообщение от Mindfure Посмотреть сообщение
программа работает правильно
Я бы не сказал так, сразу видно ошибку в 11 строке.
0
 Аватар для Semen-Semenich
5222 / 3469 / 1173
Регистрация: 21.03.2016
Сообщений: 8,295
06.12.2019, 16:57
Python
1
2
3
4
5
6
7
8
9
10
price_elem =[list(map(int, input().split()))  for i in range(int(input()))]
i = int(input()) -1
result = 0
for elm in price_elem:
    max_index = len(elm) - 1
    if max_index > i:
        percent = elm.pop(max_index)
        elem = elm[i]
        result += elem - elem*percent/100
print(result if result%1 else int(result))
0
0 / 0 / 0
Регистрация: 29.11.2019
Сообщений: 27
07.12.2019, 18:55  [ТС]
всё равно не правильный тест 10 не знаю что там но мне очень интересно
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
07.12.2019, 19:43
Цитата Сообщение от aleks12345678 Посмотреть сообщение
В последней строке записано число i — номер элемента, за который выдаётся премия.
Все числа целые, не превышают 2*105.
Целые? Значит могут быть отрицательные и 0. Условие точно такое?
0
 Аватар для Semen-Semenich
5222 / 3469 / 1173
Регистрация: 21.03.2016
Сообщений: 8,295
07.12.2019, 20:02
Цитата Сообщение от eaa Посмотреть сообщение
Значит могут быть отрицательные
а как премия будет начисляться?
Python
1
2
3
4
>>> result = -25 - (-25*50/100)
>>> result
-12.5
>>>
отниматься что ли?
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
07.12.2019, 20:09
Цитата Сообщение от Semen-Semenich Посмотреть сообщение
отниматься что ли?
да фз, понапишут заданий. ваше решение то вроде правильное.
0
07.12.2019, 20:20

Не по теме:

eaa, знаю. "плавал" а загвоздка была в точке сама суть моей задачи, и ответ в последних сообщениях вот такая ситуация была

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.12.2019, 20:20
Помогаю со студенческими работами здесь

Полезные инструменты которые помогут сделать код лучше и не только
Здесь собраны полезные функции и модули Питона, которые могут пригодиться новичкам. Многие новички пишут так: class MyClass(): ...

Полезные продукты
Скачайте файл http://anytask.s3.yandex.net/materials/28/ABBREV.xlsx Файл создан департаментом сельского хозяйства США. Это таблица, в...

Полезные продукты
По ссылке можно скачать файл ABBREV.csv (https://yastatic.net/s3/lyceum/content/resources/ABBREV.csv). Это – текстовый файл в кодировке...

Актуальные полезные книги по Python
Предлагаю делиться мнениями по поводу книг о Python на русском и английском. К сожалению, на русском свежих книг нет совсем, а вот на...

Полезные плагины
Source Sniffer http://www.openntf.org/internal/home.nsf/p...ource%20Sniffer


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru