#include #include #include using namespace std; int n, m, dp[21][21]; int solve() { for (int i = 1; i < m; i++) dp[0][i] = 1; for (int i = 1; i < n; i++) dp[i][0] = 1; for (int i = 1; i < n; i++) for (int j = 1; j < m; j++) dp[i][j] = dp[i - 1][j] + dp[i][j - 1]; return dp[n - 1][m - 1]; } void print() { for (int i = 0; i < n; i++) { for (int j = 0; j < m - 1; j++) printf("%d ", dp[i][j]); printf("%d\n", dp[i][m - 1]); } } int main() { scanf("%d %d", &n, &m); dp[0][0] = 1; printf("%d\n", solve()); print(); return 0; }