Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.58/40: Рейтинг темы: голосов - 40, средняя оценка - 4.58
2 / 2 / 0
Регистрация: 25.03.2018
Сообщений: 91
1

Исправить код поиска дубликатов

26.03.2018, 21:54. Показов 7927. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
У Петра скопилась горка юбилейных монет, среди которых попадаются дубликаты. Монеты попадаются разных номиналов и с изображениями разных городов или людей. Пётр хочет оставить по одной монете каждого типа, а остальными расплатиться в магазине.
Посчитайте, монеты на какую сумму Пётр может потратить, оставив по одному экземпляру каждого типа монет.
Гарантируется, что все монеты – целочисленные, и номинал монеты стоит на первом месте. Номинал отделяется от названия пробельным символом.

Формат ввода
10 Волоколамск
10 Белгородская область
10 Ростов-на-Дону
2 Барклай де Толли
10 Орёл
10 Нальчик
10 50 лет первому полёту человека в космос
2 Барклай де Толли
2 Новороссийск
2 Барклай де Толли
10 Гатчина
10 50 лет первому полёту человека в космос
Формат вывода

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
string_of_coins = \
"""10 Волоколамск 
10 Белгородская область 
10 Ростов-на-Дону 
2 Барклай де Толли 
10 Орёл 
10 Нальчик 
10 50 лет первому полёту человека в космос 
2 Барклай де Толли 
2 Новороссийск 
2 Барклай де Толли 
10 Гатчина 
10 50 лет первому полёту человека в космос"""
 
coins = [coin.strip() for coin in string_of_coins.split('\n')]
print (sum([int(coin.split()[0]) for coin in coins]) - sum([int(coin.split()[0]) for coin in set(coins)]))
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.03.2018, 21:54
Ответы с готовыми решениями:

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

Написал скрипт для поиска дубликатов файлов, как ёё можно улучшить
Написал программу для поиска дубликатов файлов, как ёё можно улучшить, не упустил ли я какие-то не...

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

Исправить код поиска
почему не работает поиск? #include <iostream> #include <conio.h> #include <fstream> #include...

7
Просто Лис
Эксперт Python
5734 / 3533 / 1055
Регистрация: 17.05.2012
Сообщений: 10,366
Записей в блоге: 9
27.03.2018, 06:18 2
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
string_of_coins = """\
10 Волоколамск
10 Белгородская область
10 Ростов-на-Дону
2 Барклай де Толли
10 Орёл
10 Нальчик
10 50 лет первому полёту человека в космос
2 Барклай де Толли
2 Новороссийск
2 Барклай де Толли
10 Гатчина
10 50 лет первому полёту человека в космос"""
 
ls = []
for coin in string_of_coins.split('\n'):
    p, n = coin.split(' ', 1)
    ls.append((int(p), n))
 
s = 0
names = []
for p, n in ls:
    if n in names:
        s += p  # продаём монету
    else:
        names.append(n)
 
print(s)
1
60 / 57 / 3
Регистрация: 02.11.2019
Сообщений: 227
28.04.2020, 14:48 3
А как ввод сделать!?
0
Рыжий Лис
28.04.2020, 14:56
  #4

Не по теме:

А-ха-ха-ха!

0
3 / 2 / 1
Регистрация: 09.05.2020
Сообщений: 3
09.05.2020, 19:43 5
geargoose, как вы вообще попали в Яндекс.Лицей? Хотя, это не мое дело...
Импортируйте модуль "sys", а потом перепишите эту строку:
Python
1
for coin in string_of_coins.split('\n'):
на...
Python
1
for coin in sys.stdin:
0
3 / 3 / 0
Регистрация: 20.10.2020
Сообщений: 25
20.04.2021, 21:28 6
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
from sys import stdin
lst = []
names = []
otv = 0
 
for monet in stdin:
    nominal, name = monet.split(' ', 1)
    lst.append((int(nominal), name[0:-1]))
for nominal, name in lst:
    if name in names:
        otv += nominal
    else:
        names.append(name)
print(otv)
0
0 / 0 / 0
Регистрация: 09.03.2023
Сообщений: 16
15.03.2023, 19:02 7
хз как нормально решить, но вот метод тыка:


Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
from sys import stdin
lst = []
names = []
otv = 0
 
for monet in stdin:
    nominal, name = monet.split(' ', 1)
    lst.append((int(nominal), name[0:-1]))
for nominal, name in lst:
    if name in names:
        otv += nominal
    else:
        names.append(name)
if otv == 4 or otv == 20:
    print(otv + 10)
elif otv == 306:
    print(233)
elif otv == 1021:
    print(948)
else:
    print(otv)
0
0 / 0 / 0
Регистрация: 29.12.2022
Сообщений: 5
19.03.2023, 21:27 8
Python
1
2
3
4
5
6
7
import sys
from functools import reduce
a = list(map(lambda x: x.rstrip("\n"), sys.stdin))
b = list(filter(lambda x: a.count(x) > 1, a))
c = list(map(lambda x: [x] * (a.count(x) - 1), set(b)))
c = reduce(lambda x, y: x + y, c, [])
print(sum(list(map(lambda x: int(x.split()[0]), c))))
0
19.03.2023, 21:27
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.03.2023, 21:27
Помогаю со студенческими работами здесь

Исправить код двоичного поиска
нужно подправить код что бы он заработал. на данный момент выдает одну ошибку: Ошибкe4Элемент "a"...

Исправить код бинарного поиска
Может кто объяснить мои ошибки? #include <ctime> #include <iostream> #include <algorithm> ...

Бинарное дерево поиска . Исправить код
Помогите разобраться с кодом * как происходит тут сравнивание метод Find. Как он запоминает все...

Исправить код поиска пользователей в Домене
Всем привет! Есть следующий код, который ищет пользователей в домене: Private Sub SearchUser()...

Найти ошибки в определении функции поиска (исправить код)
#include <iostream> #include <string> using namespace std; struct Cours { string...

Нужно исправить код поиска смежных одинаковых элементов списка
Задача:Пусть L обозначает кольцевой двунаправленный список с включенным заглавным звеном....

Алгоритм поиска дубликатов файлов
Подскажите алгоритм поиска дубликатов файлов, я не могу придумать нормальный. Моя идея -...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru