Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/120: Рейтинг темы: голосов - 120, средняя оценка - 4.63
 Аватар для samarcs
0 / 0 / 2
Регистрация: 01.08.2012
Сообщений: 82

Задача: Пересадки

30.10.2014, 16:57. Показов 23390. Ответов 5
Метки нет (Все метки)

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

ВХОДНЫЕ ДАННЫЕ
Программа получает на вход четыре натуральных числа - номера конечных остановок первого, затем второго автобуса. Все числа - натуральные, не превосходят 109.

ВЫХОДНЫЕ ДАННЫЕ

Программа должна выводить одно число – искомое количество остановок.

ПРИМЕРЫ


ВВОД
3
6
4
2
ВЫВОД
2

ВВОД
3
1
5
10

ВЫВОД
0

В итоге что я набрасал
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
a = input()
b = input()
c = input()
d = input()
if (a<=10**9) and (b<=10**9) and (c<=10**9) and (d<=10**9):
    A = []
    if a<=b:
        while a<=b:
            A.append(a)
            a = a + 1  
    else:
        while b<=a:
            A.append(b)
            b = b + 1         
        
        
    B = []
    if c<=d:
        while c<=d:
            B.append(c)
            c = c + 1        
    else:
        while d<=c:
            B.append(d)
            d = d + 1 
    z = 0
    for i in A:
        for k in B:
            if i==k:
                z = z + 1
    print(z)
        
    
else:
    print('Bad')
Как лучше организовать решение?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.10.2014, 16:57
Ответы с готовыми решениями:

Пересадки
Вася решил немного попутешествовать и выяснил, что между некоторыми городами нет прямых авиарейсов, поэтому придётся лететь с пересадками....

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

После пересадки в другой корпус компьютер не подает признаков жизни
Доброго времени суток! Столкнулся с очень не приятной проблемой. На днях делал пересадку комплектующих с одного корпуса в другой,...

5
2838 / 1647 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
30.10.2014, 22:24
Ты реально собрался 10**9 чисел добавлять в список? Проверь просто все возможные случаи взаимного расположения отрезков - и всё.

Добавлено через 1 минуту
И какой Python? Судя по input'ам - 2-й, судя по print'у - 3-й...
0
 Аватар для samarcs
0 / 0 / 2
Регистрация: 01.08.2012
Сообщений: 82
30.10.2014, 22:24  [ТС]
так нужно по условию задачи, проверяет код специальный алгоритм, без этого он какое-то кол-во тестов не пройдет

//
На самом деле уже разобрался с этим, сейчас с другой задачей парюсь

как найти сумму цифр каждого элемента от 10 до 100 и если сумма цифр равна n то вывести данное число
ВХОДНЫЕ ДАННЫЕ
Программа получает на вход три натуральных числа a, b, n, записанных в отдельных строках, 1≤a≤b≤105.

ВЫХОДНЫЕ ДАННЫЕ
Программа должна вывести все натуральные числа на отрезке [a,b], сумма цифр которых равна n в порядке возрастания.

ВВОД
10
100
15

ВЫВОД
69
78
87
96

Не получается именно выдрать элементы которые при сумме их цифр равны n, а python 3
0
 Аватар для samarcs
0 / 0 / 2
Регистрация: 01.08.2012
Сообщений: 82
30.10.2014, 22:32  [ТС]
Если интересно то пересадки решил так
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
a = int(input())
b = int(input())
c = int(input())
d = int(input())
if (a<=10**9) and (b<=10**9) and (c<=10**9) and (d<=10**9):
    if a>b:
        a,b=b,a
    if c>d:
        c,d=d,c       
    z = 0
    for i in range(a,b+1):
        for k in range(c,d+1):
            if i==k:
                z = z + 1
    print(z)
0
 Аватар для sigmov
585 / 372 / 63
Регистрация: 22.07.2009
Сообщений: 875
Записей в блоге: 4
31.10.2014, 02:05
Python
1
needed = (e for e in range(a,b) if sum(map(int,str(e))) == n)
1
871 / 721 / 304
Регистрация: 15.04.2013
Сообщений: 2,047
Записей в блоге: 5
31.10.2014, 02:23
Лучший ответ Сообщение было отмечено samarcs как решение

Решение

samarcs,
Задача про пересадки, это задача на пересечение последовательностей, никакие циклы там не нужны.

Во второй задаче в цикле от a до b раскладывайте число на цифры, и сранивайте сумму
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
a = int(input())
b = int(input())
n = int(input())
 
 
for num in range(a, b+1):   
    sum = 0
    t = num
    while t > 0:
        sum += t % 10
        t /= 10
    if sum == n:
        print num
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
31.10.2014, 02:23
Помогаю со студенческими работами здесь

сколько школьников после такой пересадки останется на своем месте.
Марья Ивановна построила всех школьников по алфавиту и рассадила их: сначала в первый ряд слева направо, затем во второй слева направо и...

Олимпиадная задача по программированию. PascalABC.NET. Задача L. Переключение между окнами
Когда пользователь работает в операционной системе Winux, у него часто запущено несколько приложений. Каждое из приложений работает в...

Васильев C# Глава 7 задача 8 (Просьба объяснить формулировку(задача внутри)
Текст задачи Напишите программу с классом, у которого есть текстовое поле. Значение текстовому полю присваивается при создании объекта...

Задача со строками. Задача находится на фотке, которая прикреплена к сообщению
Фотку прикрепил к сообщению. П.5.4. Правил Запрещено создавать темы с бессмысленными названиями вроде &quot;Помогите!&quot;,...

Васильев C# Глава 8 задача 2 (Просьба объяснить формулировку(задача внутри)
Текст задачи Написать программу , в которой есть класс с полем, являющимся ссылкой на одномерный целочисленный массив. У класса есть...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru