Codeforces Round 272 (Div. 2) |
---|
Закончено |
Dreamoon любит играть с множествами, целыми числами и . По определению, — это наибольший общий делитель a и b, то есть наибольшее положительное целое число, которое делит как a, так и b.
Рассмотрим некоторое множество S из ровно четырех различных положительных целых чисел. Будем говорить, что S имеет ранг k, тогда и только тогда, когда для всех пар различных элементов si, sj из S, .
Даны значения k и n, Dreamoon хочет образовать n множеств ранга k, используя только целые числа от 1 до m таким образом, что никакое число не участвует в двух различных множествах (конечно, некоторые числа можно не использовать ни в одном множестве).
Вычислите минимальное m, при котором это возможно сделать, и выведите одно возможное решение.
В единственной строке записано два целых числа через пробел n, k (1 ≤ n ≤ 10 000, 1 ≤ k ≤ 100).
В первой строке выведите единственное целое число — минимально возможное m.
В каждой из следующих n строк выведите через пробел по четыре целых числа, составляющие i-е множество.
Порядок множеств и порядок чисел во множестве может быть любым. Если имеется несколько вариантов ответа с минимальным m, выведите любой из них.
1 1
5
1 2 3 5
2 2
22
2 4 6 22
14 18 10 16
В первом примере легко увидеть, что множество {1, 2, 3, 4} не является корректным множеством ранга 1, так как .
Название |
---|