
Задача 3: Соревнование делимости Кате нравятся целые числа, которые делятся без остатка на число
K, а Маше — целые числа, которые делятся без остатка на число M. Сегодня подруги решили утроить соревнование и выяснить, чьи любимые числа лучше. Для начала они выписали на лист бумаги все целые числа от A до B включительно. Затем Катя посчитала, сколько чисел среди выписанных делятся на число K без остатка, а Маша посчитала, сколько чисел делятся на число M без остатка. В соревновании победит та из них, чьих любимых чисел окажется больше. Если же количества любимых чисел Кати и Маши совпадут, объявляется ничья. Для того, чтобы определить победителя, девочки попросили вас вычислить разность количества любимых чисел Кати и Маши. Входные данные Программа получает на вход четыре целых положительных числа, записанных в отдельных строках: K, M, A и B. Числа не превосходят 2×109. Выходные данные Программа должна вывести одно целое число — разность количества любимых чисел Кати и количества любимых чисел Маши. Система оценивания Решение, правильно работающее только для случаев, когда входные числа не превосходят 100, будет оцениваться в 60 баллов.

Ответы на вопрос

Ответ:
k = int(input())
m = int(input())
a = int(input())
b = int(input())
katya = b//k - (a-1)//k
masha = b//m - (a-1)//m
print(katya - masha)
Объяснение:



Для решения этой задачи, вы можете воспользоваться простым математическим методом. Сначала, вычислите количество чисел от A до B, которые делятся на K без остатка, и количество чисел, которые делятся на M без остатка. Затем, вычтите количество чисел, которые делятся на M из количества чисел, которые делятся на K. Результат будет разностью между количеством любимых чисел Кати и Маши.
Вот пример кода на Python:
python# Считываем значения K, M, A и B
K = int(input())
M = int(input())
A = int(input())
B = int(input())
# Инициализируем счетчики для чисел, делящихся на K и M
count_K = 0
count_M = 0
# Перебираем все числа от A до B
for num in range(A, B + 1):
if num % K == 0:
count_K += 1
if num % M == 0:
count_M += 1
# Вычисляем разность и выводим результат
result = count_K - count_M
print(result)
Этот код считывает значения K, M, A и B, затем перебирает все числа в диапазоне от A до B, считая, сколько из них делятся на K и M. Затем код вычисляет разность и выводит результат.
Пожалуйста, убедитесь, что ваши входные данные соответствуют указанным ограничениям, и вам не потребуется дополнительных проверок на валидность входных данных для данной задачи.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili