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

Составить расписание сеансов связи со спутником

07.11.2021, 12:17. Показов 1077. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В этой задаче от вас потребуется написать программу для составления расписания сеансов связи со спутником. Каждый сеанс заключается в обмене короткими сообщениями, поэтому мы считаем, что он происходит мгновенно. Поскольку ресурсы оборудования ограничены, следует стремиться к минимизации количества сеансов. Вместе с тем, интервал времени между сеансами не должен превышать dd миллисекунд. Кроме того, существуют промежутки времени, в течении которых связь невозможна. При этом на границах промежутка мгновенный сеанс связи возможен. Расписание составляется на ttмиллисекунд. Первый сеанс должен обязательно состояться в момент 00, а последний — в момент tt.

Рассмотрим пример. Пусть t=100t=100, d=20d=20 и задано 3 промежутка недоступности связи: (5;25), (27;40), (75;90)(5;25),(27;40),(75;90). Тогда потребуется восемь сеансов связи, которые можно провести в моменты времени 0, 5, 25,45, 65, 75,90,1000,5,25,45,65,75,90,100. Конкретное расписание может быть другим, но в любом случае количество сеансов не может быть меньше восьми.

Ваша программа должна по имеющейся информации найти минимальное возможное количество сеансов связи
есть пограмма, но она не учитывает некоторые случаи. Но я не могу понять какие
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
42
43
n, d, t=map(int, input().split())
a=[]
b=[]
c=0
wedfgh=0
for i in range(n):
    c,wedfgh=map(int,input().split())
    a.append(c)
    b.append(wedfgh)
a=a+[0]
b=b+[0]
ts=0
k=2
p=0
while ts<t:
    if b[p]==0:
        break
    elif (ts+d)>a[p] and (ts+d)<b[p]:
        ts=a[p]
        k+=1
    elif (ts+d)<=a[p]:
        ts+=d
        k+=1
    elif (ts+d)>=b[p] and (ts+d)<=a[p+1]:
        ts+=d
        k+=1
        p += 1
    elif (ts+d)>a[p+1] and (ts+d)<b[p+1]:
        ts=a[p+1]
        k+=1
        p += 1
    elif a[p+1]==0 and (ts+d)>=b[p]:
        ts+=d
        k+=1
        p += 1
    elif (ts+d) in a:
        ts+=d
        p=a.index(ts+d)
    elif (ts+d) in b:
        ts+=d
        p=b.index(ts+d)
        k+=1
print(k)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.11.2021, 12:17
Ответы с готовыми решениями:

Движение Земли со спутником Луной вокруг Солнца
Всем привет. Помогите написать код для моделирования движения Земли с Луной вокруг Солнца под воздействием центра тяжести. Необходим вид...

Написать программы управления пикоспутником и материнским спутником
Прошу помощи в решении задачки. Описание Материнский спутник собирает данные от пикоспутника, а затем передает их на Землю....

Составить расписание турнира
задача про теннисный клуб. даны 3 мальчика нужно чтобы каждый играл, но пары не повторились. расписание игр (без списков)

2
4 / 9 / 2
Регистрация: 05.10.2020
Сообщений: 51
07.11.2021, 12:29
Космическая связь
0
0 / 0 / 0
Регистрация: 07.11.2021
Сообщений: 21
07.11.2021, 13:07
[+] Test #1. OK
[ ] Test #2. Wrong answer
[ ] Test #3. Wrong answer
[ ] Test #4. Time limit exceeded
[ ] Test #5. Time limit exceeded
[ ] Test #6. Time limit exceeded
[ ] Test #7. Wrong answer
[ ] Test #8. Time limit exceeded
[ ] Test #9. Time limit exceeded
[ ] Test #10. Wrong answer
[ ] Test #11. Runtime error
[ ] Test #12. Wrong answer
[ ] Test #13. Time limit exceeded
[ ] Test #14. Runtime error
[ ] Test #15. Runtime error
[ ] Test #16. Time limit exceeded
[ ] Test #17. Runtime error
[ ] Test #18. Runtime error
[ ] Test #19. Time limit exceeded
[+] Test #20. OK
[ ] Test #21. Time limit exceeded
[ ] Test #22. Time limit exceeded
[ ] Test #23. Time limit exceeded
[ ] Test #24. Time limit exceeded
[ ] Test #25. Time limit exceeded
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.11.2021, 13:07
Помогаю со студенческими работами здесь

Составить расписание конференции
Вопрос в чем: есть рабочее расписание конференции. То есть имеются участники, которые выступают определенное количество времени в рамках...

Составить штатное расписание
Штатное расписание Составить штатное расписание небольшой частной больницы, то есть определить, сколько сотрудников, с каким окладом и ...

Составить расписание турнира
задача про теннисный клуб. даны 3 мальчика нужно чтобы каждый играл, но пары не повторились. расписание игр (без списков)

Составить расписание самолетов
Ребята, помогите пожалуйста! Нужно составить расписание самолетов. Хранится оно в файле &quot;Расписание.txt&quot;, каждой строке...

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


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Доступность команды формы по условию
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