Algorithm


D. Dreamoon and Sets
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output

Dreamoon likes to play with sets, integers and .  is defined as the largest positive integer that divides both a and b.

Let S be a set of exactly four distinct integers greater than 0. Define S to be of rank k if and only if for all pairs of distinct elements si, sj from S, .

Given k and n, Dreamoon wants to make up n sets of rank k using integers from 1 to m such that no integer is used in two different sets (of course you can leave some integers without use). Calculate the minimum m that makes it possible and print one possible solution.

Input

The single line of the input contains two space separated integers n, k (1 ≤ n ≤ 10 000, 1 ≤ k ≤ 100).

Output

On the first line print a single integer — the minimal possible m.

On each of the next n lines print four space separated integers representing the i-th set.

Neither the order of the sets nor the order of integers within a set is important. If there are multiple possible solutions with minimal m, print any one of them.

Examples
input
Copy
1 1
output
Copy
5
1 2 3 5
input
Copy
2 2
output
Copy
22
2 4 6 22
14 18 10 16
Note

For the first example it's easy to see that set {1, 2, 3, 4} isn't a valid set of rank 1 since .

 

Code Examples

#1 Code Example with C++ Programming

Code - C++ Programming

#include <bits/stdc++.h>

using namespace std;

int n, k, mx;
vector<vector<int> > sol;

int main() {
	scanf("%d %d", &n, &k);

	sol.resize(n);
	for(int i = 0; i < n; ++i) {
		sol[i].push_back(6 * i + 1);
		sol[i].push_back(6 * i + 2);
		sol[i].push_back(6 * i + 3);
		sol[i].push_back(6 * i + 5);
	}

	for(int i = 0; i < sol.size(); ++i)
		for(int j = 0; j < 4; ++j)
			mx = max(mx, sol[i][j] * k);

	printf("%d\n", mx);

	for(int i = 0; i < sol.size(); ++i, puts(""))
		for(int j = 0; j < 4; ++j)
			printf("%s%d", j == 0 ? "" : " ", sol[i][j] * k);

  return 0;
}
Copy The Code & Try With Live Editor

Input

x
–
+
cmd
1 1

Output

x
–
+
cmd
5
1 2 3 5
Advertisements

Demonstration


Codeforces Solution-Dreamoon and Sets-Solution in C, C++, Java, Python

Previous
Codeforces solution 1080-B-B. Margarite and the best present codeforces solution
Next
CodeChef solution DETSCORE - Determine the Score CodeChef solution C,C+