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

Работа с расписаниями

17.05.2020, 22:40. Показов 4364. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Каждую субботу и воскресенье в школе танцев проходят занятия, притом в один день проводится
одно занятие в каком-то определённом стиле. Для удобства обозначим стили танцев латинскими
буквами от a до z.
Варвара любит танцевать, но у неё есть некоторые предпочтения. Так, по субботам она готова
танцевать лишь один определённый стиль. То же касается и воскресенья. Притом стили, которые
она хочет танцевать в субботу и в воскресенье, могут как совпадать, так и различаться, но не
изменяются.
Известно расписание занятий за последние n недель, а также то, что ровно в m из этих недель
Варя хотя бы один раз побывала в школе. Гарантируется, что она посещала только занятия, соответствующие её предпочтениям, а также то, что посещала все из таких. Известно также, что Варя
была на танцах как минимум в одну из суббот и как минимум в одно из воскресений.
Выясните предпочтения Вари. Если существует несколько вариантов, следует выбрать тот, в
котором буква, соответствующая стилю, предпочитаемому в субботу, как можно меньше в алфавитном порядке; если и таких несколько, из них следует выбрать тот, в котором как можно меньше в
алфавитном порядке буква, соответствующая стилю, предпочитаемому в воскресенье.

Никак не могу понять задачу, помогите
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.05.2020, 22:40
Ответы с готовыми решениями:

Система управления расписаниями
Доброго времени суток! Помогите, пожалуйста, написать программу.:cry: Очень большое описание Создайте систему управления...

Оптимизационный эксперимент с расписаниями
Оптимизирую в нем функцию root.opt_function(). Я создаю свой первый оптимизационный эксперимент. Для его работы нужно 14000 мегабайт...

Работа в игровом проекте. Работа с php. Работа с платежными системами. Работа с базами данных
Работа в игровом проекте. Работа с php. Работа с платежными системами. Работа с базами данных. Стоимость: Договорная Срок...

22
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
18.05.2020, 08:39
примеры входных/выходных данных?
0
1 / 1 / 0
Регистрация: 29.09.2018
Сообщений: 34
18.05.2020, 11:08  [ТС]
На скриншоте
Миниатюры
Работа с расписаниями  
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
18.05.2020, 11:54
где наработки и что конкретно не получается?
0
1 / 1 / 0
Регистрация: 29.09.2018
Сообщений: 34
18.05.2020, 11:54  [ТС]
Не понимаю как решать
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
18.05.2020, 12:08
Примеры разобрал? понятно почему такие ответы получаются?
0
1 / 1 / 0
Регистрация: 29.09.2018
Сообщений: 34
18.05.2020, 12:09  [ТС]
Да, понятно
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
18.05.2020, 13:39
Тогда тем более, где наработки?
0
1 / 1 / 0
Регистрация: 29.09.2018
Сообщений: 34
18.05.2020, 13:40  [ТС]
Да блин, у меня нет идей как это реализовать. По примерам не понятно
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
18.05.2020, 15:13
То понятно, то не понятно. Определись уже. Выложи полный текст задачи. Что там в замечаниях?
0
1 / 1 / 0
Регистрация: 29.09.2018
Сообщений: 34
18.05.2020, 15:21  [ТС]
Все, что было
Миниатюры
Работа с расписаниями  
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
18.05.2020, 17:58
Python
1
2
3
4
5
n, m = map(int, input().split())
s1 = sorted(input())
s2 = sorted(input())
print(s1)
print(s2)
первый пример:
PowerShell
1
2
['a', 'a', 'b', 'b', 'c']
['a', 'b', 'c', 'c', 'c']
ответы которые могут быть (суббота + воскресенье):
Code
1
2
3
4
5
a + ccc
b + ccc
c + ccc
aa + cc
bb + cc
выбираем минимум. это: aa + cc
ответ: a c
0
34 / 25 / 8
Регистрация: 16.11.2019
Сообщений: 179
18.05.2020, 19:13
Примеры:
Python
1
2
3
a + ccc
b + ccc
c + ccc
Невозможны, так как по условию задачи
Python
1
Гарантируется, что она посещала только занятия, соответствующие её предпочтениям, а также то, что посещала все из таких.
Я вот и не понимаю, как перебрать все такие случаи, чтобы они удовлетворяли условию задачи.
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
18.05.2020, 19:19
А, ну тогда только такие варианты могут быть:
Code
1
2
aa + ccc
bb + ccc
c + ccc
понял не может
0
0 / 0 / 0
Регистрация: 19.05.2020
Сообщений: 1
19.05.2020, 15:45
а как это может быть возможно, когда Варя была только 4 дня на танцах?
0
34 / 25 / 8
Регистрация: 16.11.2019
Сообщений: 179
19.05.2020, 18:33
Она была 4 недели, а так как дни могут находится в одну неделю, то такой вариант подходит!
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
19.05.2020, 19:45
5 4
abcab
cccab

в 1ую неделю была в субботу и воскресенье
во 2ую неделю была в воскресенье
в 3ую неделю была в воскресенье
в 4ую неделю была в субботу
в 5ую неделю не была

Добавлено через 10 минут
Разбирайтесь (требует доработки), накидал решение перебором:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
n, m = map(int, input().split())
s1 = input()
s2 = input()
 
d1 = {}
d2 = {}
for i in range(n):
    d1.setdefault(s1[i], set()).add(i)
    d2.setdefault(s2[i], set()).add(i)
 
flag = True
for x1, v1 in d1.items():
    for x2, v2 in d2.items():
        if len(v1 | v2) == m:
            print(x1, x2)
            flag = False
if flag:
    print('Impossible')
P.S. в ЛС мне не надо писать
0
1 / 1 / 0
Регистрация: 21.05.2020
Сообщений: 11
21.05.2020, 17:31
Привет, поступающие в ЛКШ!
Это не очень честный путь решения, но, если вы зашли в тупик, вот вам наработка кода, валится на 15 тесте.
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
n,m=map(int, input().split())
s1=input()
s2=input()
d=[]
dd=[]
lol=[]
for i in range(n):
    if s1[i] not in d:
        d.append(s1[i])
    if s2[i] not in dd:
        dd.append(s2[i])
    lol.append([s1[i],s2[i]])
d.sort()
dd.sort()
d1=[]
d2=[]
for i in range(len(d)):
    d1.append(0)
for i in range(len(dd)):
    d2.append(0)
for i in range(n):
    d1[d.index(s1[i])]+=1
    d2[dd.index(s2[i])]+=1
k,l=-1,-1
for i in d1:
    for j in d2:
        if i+j-lol.count([d[d1.index(i)], dd[d2.index(j)]])==m:
            k,l=i,j
            break
    if k!=-1:
        break
if k==-1 or l==-1:
    print("Impossible")
else:
    print(d[d1.index(k)], dd[d2.index(l)])
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
21.05.2020, 17:36
Учите словари. да будет вам радость
0
1 / 1 / 0
Регистрация: 21.05.2020
Сообщений: 11
21.05.2020, 19:47
Словари здесь не так уж и нужны
Тем более они сложнее в обращении - вместо индексов ключи, не всегда являющиеся удобными для перебора

Добавлено через 15 минут
Данные для отладки:
Code
1
2
3
5 3
46273
85121
Добавлено через 14 минут
В общем, пофиксил код, но теперь валится на 26-м тесте из-за времени.
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
import random
n,m=map(int, input().split())
s1=input()
s2=input()
d=[]
dd=[]
lol=[]
for i in range(n):
    if s1[i] not in d:
        d.append(s1[i])
    if s2[i] not in dd:
        dd.append(s2[i])
    lol.append([s1[i],s2[i]])
d.sort()
dd.sort()
d1=[]
d2=[]
for i in range(len(d)):
    d1.append(0)
for i in range(len(dd)):
    d2.append(0)
for i in range(n):
    d1[d.index(s1[i])]+=1
    d2[dd.index(s2[i])]+=1
k=-1
for i in d:
    for j in dd:
        if d1[d.index(i)]+d2[dd.index(j)]-lol.count([i,j])==m:
            k=1
            print(i,j)
            break
    if k!=-1:
        break
if k==-1:
    print("Impossible")
XD

Добавлено через 1 час 34 минуты
eaa, помоги
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.05.2020, 19:47
Помогаю со студенческими работами здесь

Работа с строками,Работа со структурными типами данных,Работа с файлами!!
Помогите написать программы для следующих заданий....буду очень благодарен.) 1)Разработать программу которая удаляет все слова в...

Нужна летиратура, в которой бы описывались работа с событиями, работа с элементами управления
Помогите пожалуйста найти летиратуру, в которой бы описывались работа с событиями,работа со всеми элементами управления(toolbox).И если...

Работа - проведение обучающих семинаров по C#. Работа по выходным дням ( сб-вс - 32 часа). От 30 000р.
Обязанности - проведение обучающих семинаров по C# Базовый (начальный уровень). Опыт преподавания не обязателен, главное чтобы вы не...

Работа формы в фоне, вне фокуса (работа с раскладкой клавиатуры)
Как заставить это работать в фоне? Даный код работает пока форма в фокусе, как только ее отпускаем - она не реагирует. Public...

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


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru