Дано целое чётное число $$$X$$$. Вывести для него ближайшее нечётное число. Если вариантов несколько, то вывести то, которое короче в десятичной записи. Если вариантов все равно несколько, вывести то, которое меньше.
В единственной строке содержится целое число $$$X$$$ ($$$|X| \leq 10^6$$$).
Ближайшее нечётное число, удовлетворяющее условию задачи.
10
9
6
5
-4
-5
Минус также считается символом десятичной записи.
Вы сидите на вершине дерева с небольшой командой выживших в центре бобро-зомби апокалипсиса.
На земле вас окружили N бобров-зомби, которые вот-вот сточат ствол дерева!
У каждого бобра-зомби есть свой размер si, выраженный натуральным числом.
Учёный, который недавно погиб от несчастного случая, рассказал, что, если стравить двух бобров-зомби между собой с помощью особых радиоволн, то они образуют могущественного Бобротрона, размер которого будет равен произведению размеров стравленных бобров.
Последними словами учёного было уточнение, что если размер Бобротрона будет квадратом целого числа, то он будет на вашей стороне, вселит ужас в остальных бобров-зомби и заставит их убежать!
Срочно посчитайте, сколькими способами можно создать доброго Бобротрона, стравливая двух бобров-зомби!
Первая строка ввода содержит целое число N — количество бобров-зомби (2 ≤ N ≤ 200 000).
Вторая строка содержит N целых чисел si, разделённых пробелами — размеры бобров-зомби (1 ≤ si ≤ 200 000).
Выведите количество пар бобров, которые смогут образовать доброго Бобротрона.
4
1 4 9 16
6
4
2 4 6 8
1
В первом примере подойдёт любая пара бобров.
Во втором примере подойдёт лишь пара бобров с размерами 2 и 8.
CSV (от англ. Comma-Separated Values — значения, разделённые запятыми) — текстовый формат, предназначенный для представления табличных данных.
Описание формата:
Каждая строка файла — это одна строка таблицы. Строки не могут быть пустыми. Каждая строка заканчивается символом перевода строки.
xxx,yyy,zzz
Каждая строка содержит одну или более ячеек, разделенных запятыми. Разные строки могут содержать разное количество ячеек. Значение ячейки может быть пустым. Пробелы являются частью значения ячейки и не должны игнорироваться. После последней ячейки запятая не ставится.
aaa,,ccc,ddd
Если значение содержит запятую - оно обязательно обрамляется двойными кавычками. В противном случае двойные кавычки могут отсутствовать.
Если обрамленное значение содержит двойные кавычки - они представляются в виде двух двойных кавычек подряд.
Ваша задача — написать программу, которая будет читать данные в CSV формате и выводить их на печать в отформатированном виде.
Файл в CSV формате, содержащий не более 100 непустых строк. Каждая строка содержит не более 100 символов. Допустимые символы: строчные и прописные латинские буквы, цифры, знаки препинания (точка, запятая, вопросительный и восклицательный знак, двоеточие, точка с запятой, двойные кавычки) и пробелы.
Выведите информацию из файла, отформатированную по следующим правилам:
Каждая строка содержит одинаковое количество ячеек. Строки могут дополняться справа необходимым количеством пустых ячеек.
Ширина каждого столбца подбирается автоматически по ширине самого длинного значения.
Остальные значения выравниваются по левому краю и дополняются справа необходимым количеством пробелов.
Разделитель между ячейками в строке — вертикальная черта «|».
a,b,c,d,e
"aa",,"cc",dd
"a,a,a","b,b","c"
"a,""a"",""","a and ""b""",,a"b
a |b |c |d |e
aa | |cc|dd |
a,a,a |b,b |c | |
a,"a","|a and "b"| |a"b|
Гиптопод Поликарп — существо, прибывшее то ли из будущего, то ли из другого измерения, предоставил человечеству какой-то аппарат, который является то ли квантовым компьютером, то ли вечным двигателем.
Точнее, пока лишь он предоставил схему этого аппарата. На схеме присутствуют N точек и M каналов. Каждый канал соединяет ровно две точки и имеет заряд: + или -. На некоторых каналах заряд находится в суперпозиции, то есть пока неизвестен.
Гиптопод Поликарп очень любит циклы, поэтому загадал загадку: сколькими способами можно установить все неизвестные заряды, чтобы все простые циклы на схеме были отрицательными?
Простым циклом на схеме называется последовательность различных точек таких, что все соседние точки, а также первая и последняя, соединены существующим каналом, и каждый канал используется не более одного раза.
Простой цикл является отрицательным, если произведение зарядов каналов этого цикла даёт знак -.
Поликарп понимает, что ответ может быть слишком большим, поэтому просит вывести его остаток от деления на число 111111111111111111.
Первая строка содержит два целых числа N и M — количество точек и каналов на схеме, соответственно (1 ≤ N ≤ 2·105; 0 ≤ M ≤ 2·105).
Следующие M строк содержат описания каналов в виде пары целых чисел ai и bi (1 ≤ ai, bi ≤ N; ai ≠ bi), означающих номера точек, которые соединяет этот канал, а также символ, означающий заряд этого канала: «+», «-» или «?».
В единственную строку выведите целое число — ответ на задачу.
3 3
1 2 ?
2 3 ?
3 1 ?
4
4 4
1 2 +
1 3 +
2 3 -
1 4 ?
2
Вам необходимо вывести все основания систем счисления, в которых запись числа A оканчивается на десятичную запись двузначного числа B.
В первой строке заданы два целых числа A и B (1 ≤ A ≤ 109, 10 ≤ B < 100) в десятичной системе счисления.
В произвольном порядке выведите все основания систем счисления, в которых запись числа A оканчивается на десятичную запись числа B. Если таких систем нет, выведите - 1.
71 13
68 4
Зубробизон Ромалий выставил в ряд N горшков с травой и пронумеровал их слева направо числами от 1 до N.
Затем он составил M правил обмена, где каждое правило это два натуральных числа от 1 до N — номера горшков, которые нужно поменять местами.
В первый день он воспользовался первым правилом и поменял местами соответствующие горшки. Во второй день он воспользовался вторым правилом и поменял местами соответствующие горшки.
...
В M день он воспользовался M-м правилом и поменял местами соответствующие горшки.
В M + 1 день он воспользовался первым правилом и поменял местами соответствующие горшки.
Во M + 2 день он воспользовался вторым правилом и поменял местами соответствующие горшки.
И так далее...
Ромалий хочет проверить себя и просит вас рассчитать положение горшков через K дней.
В первой строке заданы три целых числа: N (1 ≤ N ≤ 103), M (1 ≤ M ≤ 105) и K (1 ≤ K ≤ 1018) — число горшков, число правил и количество дней соответственно.
Следующие M строк содержат описание правил в виде пары целых чисел ai и bi (1 ≤ ai, bi ≤ N), обозначающих номера горшков, которые нужно поменять местами.
В единственной строке выведите N чисел — положение горшков через K дней.
4 3 5
1 2
2 3
1 3
3 2 1 4
4 5 10
1 2
1 3
3 4
2 3
1 4
4 3 2 1
Сколькими способами можно расставить на квадратной доске размера N клеток K ладей, чтобы они не били друг друга?
На доске имеется несколько запрещённых клеток, в которые ставить фигуры нельзя.
Все ладьи одинаковые. Ни фигуры, ни клетки не имеют цвета.
Считается, что ладья бьёт другую ладью, если они обе находятся в одной строке или в одном столбце доски.
Посчитайте количество способов и выведите его остаток от деления на число 109 + 7.
Первая строка содержит два целых числа N и K — размеры доски и количество ладей (1 ≤ N ≤ 109; 1 ≤ K ≤ 107).
Вторая строка содержит целое число M — количество запрещённых клеток (0 ≤ M ≤ 40).
В следующих M строках содержатся координаты клеток в виде пар чисел xi, yi (1 ≤ xi, yi ≤ N).
Выведите единственное число — ответ на задачу.
3 2
3
1 1
2 1
3 2
8
2 2
2
1 1
1 2
0
5 1
0
25
Всё, что делает Генри, является хардкорным. Вот и сейчас он выписал n целых чисел, пренадлежащих отрезку [0, 109] и образующих хардкорный массив — массив, в котором все попарные разности различны.
Попарные разности массива — это все числа |ai - aj| для всех i и j таких, что 1 ≤ i < j ≤ n.
Думаете, Вы такой же хардкорный, как Генри? Конечно нет. Поэтому, Ваша задача немного проще: в выведенном Вами массиве количество различных попарных разностей должно быть хотя бы 90% от количества всех попарных разностей.
В единственной строке ввода содержится целое число n — требуемый размер массива (2 ≤ n ≤ 10 000).
Выведите n целых чисел ai (0 ≤ ai ≤ 109), удовлетворяющих заданным требованиям.
2
404 42
4
322 228 1488 1337
7
3 14 15 92 65 35 9
Массив в третьем тестовом примере не является абсолютно хардкорным. Всего попарных разностей в нём 21, но две из них, |3 - 9| и |15 - 9|, равны между собой. Тем самым в нём 20 различных разностей, что составляет примерно 95% и является приемлемым результатом.
Рома и Виталя придумали следующую игру: на скорость прибавлять и вычитать из числа степени двойки, а после каждой операции считать число единиц в двоичной записи этого числа. Кто быстрее и правильнее, тот и победил.
Вам предстоит помочь им: написать программу, с помощью которой они могли бы проверить свои расчеты.
Правила игры следующие:
Гарантируется, что в любой момент времени число P не может быть отрицательным.
На первой строке задано целое число N (1 ≤ N ≤ 105) - количество операций.
На следующих N строках заданы операции, где каждая операция задается одной из двух строк: «add S» или «sub S», где S (0 ≤ S ≤ 105) — это целое число.
Операция «add S» означает, что нужно прибавить к числу P двойку в степени S.
Операция «sub S» означает, что нужно вычесть из числа P двойку в степени S.
Для каждого из N запросов выведите на одной строке число — количество единиц в двоичной записи числа P после выполнения данной операции.
2
add 1
sub 1
1
0
4
add 2
add 8
sub 3
sub 0
1
2
6
7
Перед вами расположен прямоугольный лист клетчатой бумаги шириной W и высотой H клеток.
Разрешается начертить на нём не более двух прямых, проходящих по линиям сетки. Каждая прямая должна проходить от края листа до края.
После этого лист разрезается по начерченным прямым и, возможно, распадается на несколько новых листов.
Какое максимальное количество квадратных кусков можно получить таким образом?
Единственная строка ввода содержит два целых числа W и H, разделённых пробелом (1 ≤ W, H ≤ 109).
Выведите единственное целое число — ответ на задачу.
2 3
2
Астроном Виталий открыл новое созвездие и назвал его созвездием Бизона. Он сфотографировал это созвездие два раза, и оказалось, что созвездия были сфотографированы под различными углами. По заданным координатам звёзд созвездия требуется найти соответствующую разность углов.
Первая строка входных данных содержит одно целое число n (1 ≤ n ≤ 1000). Каждая из последующих n строк содержит два вещественных числа xi и yi — координаты очередной звезды созвездия на первой фотографии (|xi|, |yi| ≤ 100). Числа даны не более чем с 10 знаками после десятичной точки; гарантируется, что расстояние между любыми двумя звёздами созвездия не менее 10 - 5.
В следующих n строках в аналогичном формате заданы звёзды со второй фотографии. Гарантируется, что второй набор был получен из первого движением плоскости. При этом порядок звёзд в списках, задающих первую и второй фотографии, может различаться.
Выведите одно вещественное число — угол в радианах, на который созвездие на одной фотографии повёрнуто относительно созвездия на другой. Из множества углов выведите наименьший неотрицательный угол. Ответ должен иметь абсолютную погрешность не хуже 10 - 6.
3
1.0 1.0
2.0 2.0
1.0 2.0
4.0 3.0
4.0 4.0
3.0 3.0
3.14159265359