#include <cmath>
#include <cstring>
#include <array>
#include <deque>
#include <map>
#include <queue>
#include <set>
#include <vector>
#include <fstream>
#include <iomanip>
#include <iostream>
#include <algorithm>
#include <bitset>
#include <random>
#include <string>
using namespace std;
typedef long long ll;
typedef long double ld;
const int N = 2e5 + 3;
const int INF = 0x3f3f3f3f;
const int mod = 1e9 + 7;
int main()
{
ios::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
int T;
cin >> T;
for (int kase = 1; kase <= T; ++kase)
{
int n, m, k;
cin >> n >> m >> k;
if (kase != 1)
cout << "\n";
if (n % m == 0)
{
m = n / m;
for (int i = 0; i < k; ++i)
{
for (int j = 1; j <= n; j += m)
{
cout << m;
for (int l = 0; l < m; ++l)
cout << " " << j + l;
cout << "\n";
}
}
continue;
}
int rem = n % m, d = n / m;
for (int i = 0,t=0; i < k ; ++i)
{
int man = t%n;
for (int j = 0; j < rem; ++j)
{
cout << d + 1;
for (int l = 0; l <= d; ++l)
{
man=man%n+1;
++t;
cout << " " << man;
}
cout << "\n";
}
for (int j = rem; j < m; ++j)
{
cout << d;
for (int l = 0; l < d; ++l)
{
man=man%n+1;
cout << " " << man;
}
cout << "\n";
}
}
// for (int i = k / 2; i < k; ++i)
// {
// int man = n + 1;
// for (int j = 0; j < rem; ++j)
// {
// cout << d+1<<" "<<j+1+i-k/2;
// for (int l = 0; l < d; ++l)
// cout << " " << --man;
// cout << "\n";
// }
// for (int j = rem; j<m; ++j)
// {
// cout << d;
// for (int l = 0; l < d; ++l)
// cout << " " << --man;
// cout << "\n";
// }
// }
}
return 0;
}
1312. Minimum Insertion Steps to Make a String Palindrome | 1092. Shortest Common Supersequence |
1044. Longest Duplicate Substring | 1032. Stream of Characters |
987. Vertical Order Traversal of a Binary Tree | 952. Largest Component Size by Common Factor |
212. Word Search II | 174. Dungeon Game |
127. Word Ladder | 123. Best Time to Buy and Sell Stock III |
85. Maximal Rectangle | 84. Largest Rectangle in Histogram |
60. Permutation Sequence | 42. Trapping Rain Water |
32. Longest Valid Parentheses | Cutting a material |
Bubble Sort | Number of triangles |
AND path in a binary tree | Factorial equations |
Removal of vertices | Happy segments |
Cyclic shifts | Zoos |
Build a graph | Almost correct bracket sequence |
Count of integers | Differences of the permutations |
Doctor's Secret | Back to School |