Codeforces Round 1000 (Div. 2) |
---|
Закончено |
Отрезок положительных целых чисел $$$[l,r]$$$ называется взаимно простым, если числа $$$l$$$ и $$$r$$$ взаимно простые$$$^{\text{∗}}$$$.
Взаимно простой отрезок $$$[l,r]$$$ называется минимальным взаимно простым, если он не содержит$$$^{\text{†}}$$$ никаких взаимно простых отрезков, не равных самому себе. Ниже в разделе примечаний приведены примеры минимальных и не минимальных взаимно простых отрезков.
Дан отрезок $$$[l,r]$$$ положительных целых чисел, найдите количество минимальных взаимно простых отрезков, содержащихся в $$$[l,r]$$$.
$$$^{\text{∗}}$$$Два целых числа $$$a$$$ и $$$b$$$ являются взаимно простыми, если у них есть только один положительный общий делитель. Так, например, числа $$$2$$$ и $$$4$$$ не являются взаимно простыми, потому что они оба делятся на $$$2$$$ и $$$1$$$, но числа $$$7$$$ и $$$9$$$ являются взаимно простыми, так как их единственный положительный общий делитель $$$1$$$.
$$$^{\text{†}}$$$Отрезок $$$[l',r']$$$ содержится внутри отрезка $$$[l,r]$$$, если и только если $$$l \le l' \le r' \le r$$$.
Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \le t \le 100$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.
Единственная строка каждого тестового набора состоит из двух целых чисел $$$l$$$ и $$$r$$$ ($$$1 \le l \le r \le 10^9$$$).
Для каждого набора входных данных выведите количество минимальных взаимно простых отрезков, содержащихся в $$$[l,r]$$$, в отдельной строке.
61 21 1049 4969 4201 19982 44353
1 9 0 351 1 34371
В первом наборе входных данных дан отрезок $$$[1,2]$$$. Отрезки, содержащиеся в $$$[1,2]$$$, следующие:
Таким образом, отрезок $$$[1,2]$$$ содержит $$$1$$$ минимальный взаимно простой отрезок.
Название |
---|