Иван Петрович взял отпуск продолжительностью $$$n$$$ дней. Первый день отпуска выпадает на день недели под номером $$$d$$$ (1 — понедельник, 2 — вторник, ..., 7 — воскресенье). Иван Петрович любит ездить отдыхать на Кипр. Но вылеты на Кипр из его родного города есть только по понедельникам, а обратно — только по воскресеньям. Иван Петрович хочет понять, какое максимальное количество недель он сможет провести на Кипре в свой отпуск (день прилёта и день обратного вылета Иван Петрович считает днями, проведёнными на Кипре). Помогите ему вычислить это.
В первой строке входных данных записано число $$$n$$$ ($$$1 \leq n \leq 2\cdot 10^9$$$) — продолжительность отпуска. Во второй строке записано целое число $$$d$$$ ($$$1\leq d \leq 7$$$) — номер дня недели первого дня отпуска.
Требуется вывести одно целое число — количество недель, которое Иван Петрович проведёт на Кипре.
Решения, работающие верно при $$$n \leq 1000$$$, будут оцениваться в 60 баллов.
14 1
2
17 3
1
В первом примере отпуск продолжается 14 дней и начинается в понедельник. Поэтому Иван Петрович улетит на Кипр в первый день и вернётся в 14-й день, продолжительность пребывания на Кипре составит две недели.
Во втором примере отпуск начинается в среду. Ближайший понедельник будет 6-м днём отпуска. Ивану Петровичу придётся вернуться в воскресенье, которое будет 12-м днём отпуска. Следующее воскресенье будет 19-м днём отпуска, а продолжительность отпуска только 17 дней. Поэтому на Кипре Иван Петрович проведёт всего лишь одну неделю.
У Васи есть чашечные весы и набор гирек. Правда, в наборе предусмотрены гирьки только двух различных весов: 1 и 2 грамма. Набор не пустой, но гирьки одного из весов могут быть потеряны и полностью отсутствовать. Вася пытается разложить все имеющиеся гирьки на обе чаши весов так, чтобы весы оказались в равновесии (то есть разложить все гирьки на две кучки одинакового веса). Оказалось, что у него имеется $$$n_1$$$ гирек весом 1 грамм и $$$n_2$$$ гирек весом 2 грамма. Получится ли у него это?
В первой строке входных данных записано целое число $$$n_1$$$, во второй — $$$n_2$$$ ($$$n_1\ge 0$$$, $$$n_2\ge 0$$$, $$$0 \lt n_1 + n_2 \leq 2\cdot 10^9$$$).
Если разложить гирьки на две равные кучки возможно, пограмма должна вывести слово Yes, в противном случае — No.
Если гирьки разложить возможно, то во второй строке требуется вывести два целых числа в указанном порядке: количество гирек весом 1 грамм и количество гирек весом 2 грамма в одной из кучек в разложении. Если вариантов разложения несколько, требуется вывести любой из них.
Решение, правильно работающее, когда входные числа не превосходят 10, будет оцениваться в 30 баллов.
2 1
Yes 0 1
1 2
No
В первом примере также правильным ответом будет
Yes
2 0
Сереже на первое сентября подарили магнитный конструктор, состоящий из брусков разной длины, которые могут соединяться концами друг с другом. В подарочном наборе все бруски уложены в порядке неубывания длины, причем бруски могут иметь одинаковую длину — это очень важно для Серёжи, потому что он будет собирать из брусков равносторонние треугольники для своего большого проекта. Для этого проекта Серёже нужно очень много деталей такой формы, и он хочет понять, сколько всего возможно собрать равносторонних треугольников из конструктора для последующего их одновременного использования в проекте. Размеры треугольников могут быть различными, но все они должны быть равносторонними. Определите, какое максимальное количество равносторонних треугольников можно собрать из конструктора (брусок, использованный в одном треугольнике, уже не может быть использован в другом).
В первой строке входных данных дано целое число $$$n$$$ — количество брусков ($$$1 \leq n \leq 10^5$$$). В следующих $$$n$$$ строках даны длины брусков конструктора — целые числа от 1 до $$$10^9$$$ по одному в строке. Числа даны в неубывающем порядке.
Требуется вывести одно целое число — максимально возможное число равносторонних треугольников.
Решения, правильно работающие при $$$n \leq 100$$$, будут оцениваться в 50 баллов.
6 1 1 1 1 2 2
1
6 1 1 3 3 5 5
0
В первом примере можно составить один треугольник из трёх брусков длины 1. Остались бруски длиной 1, 2, 2, из которых нельзя составить равносторонний треугольник.
Во втором примере нет трёх брусков равной длины, поэтому ни одного равностороннего треугольника составить нельзя.
Маленькая Ева только учится играть в шахматы. Сегодня она узнала, как слон ходит по шахматной доске. Теперь она хочет понять, куда слон может добраться не более чем за 100 ходов. Помогите Еве понять, может ли слон добраться от одной клетки до другой клетки шахматной доски.
Шахматный слон за один ход перемещается по диагонали на любое количество клеток. Шахматная доска имеет размеры $$$8\times 8$$$.
Программа получает на вход 4 числа, записанных в отдельных строках. Первые два числа — номер строки и номер столбца исходной клетки, следующие два числа — номер строки и номер столбца конечной клетки (каждое число принимает значения от 1 до 8). Гарантируется, что исходная и конечная клетки не совпадают.
В первой строке выведите Yes или No — ответ на вопрос задачи. Если в первой строке вы вывели Yes, то во второй строке выведите число $$$n$$$ — количество ходов слона (число не превосходящее 100). В следующих $$$n$$$ строках выведите последовательно клетки (номер строки и номер столбца клетки через пробел), в которые нужно перемещать слона. Последняя выведенная клетка должна совпадать с заданной конечной клеткой.
Вам не нужно минимизировать число ходов слона, но оно не должно превосходить 100.
В этой задаче 20 тестов, помимо тестов из условия. Каждый тест оценивается в 5 баллов независимо от остальных.
1 1 1 7
Yes 2 4 4 1 7
3 2 3 8
Yes 3 5 4 2 7 3 8
1 1 1 2
No
На занятиях математического кружка Сережа узнал об интересных числах — это числа, которые имеют простые делители только 2, 3 и 5. Теперь он хочет узнать наибольшее интересное число, не превосходящее числа $$$n$$$.
Программа получает на вход целое число $$$n$$$ ($$$2 \leq n \leq 10^{17}$$$).
Обратите внимание, что значение $$$n$$$ может быть больше, чем возможное значение 32-битной целочисленной переменной, поэтому необходимо использовать 64-битные числа (тип int64 в языке Pascal, тип long long в C и C++, тип long в Java и C#).
Программа должна вывести одно целое число — максимальное интересное число, не превосходящее $$$n$$$.
Решения, правильно работающие при $$$n \leq 10^4,$$$ будут оцениваться в 30 баллов.
Решения, правильно работающие при $$$n \leq 10^8,$$$ будут оцениваться в 50 баллов.
7
6
100
100
Первые интересные числа — это 2, 3, 4, 5, 6, 8, 9, 10, 12, 15, 16, 18, 20, 24, 25, 27, 30,....
Поэтому в первом примере максимальное интересное число, не превосходящее 7 — это 6.
Во втором примере число 100 разлагается на множители, как $$$100 = 2^2 \cdot 5^2$$$, поэтому число 100 само является интересным.