https://www.acmicpc.net/problem/16395
import java.util.*;
import java.io.*;
class Main {
static int n,k;
static int[][] A;
public static void main(String[] args) throws IOException {
A = new int[30 + 1][30 + 1];
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
n = Integer.parseInt(st.nextToken());
k = Integer.parseInt(st.nextToken());
A[0][0] = 1;
A[1][0] = 1;
A[1][1] = 1;
int answer = 0;
for (int i = 2; i < A.length; i++) {
for (int j = 0; j < A[i].length; j++) {
if (i == j) {
A[i][j] = A[i][j] + A[i - 1][j - 1];
}else if (j == 0) {
A[i][j] = A[i][j] + A[i - 1][j];
}else{
int left = A[i - 1][j - 1];
int right = A[i - 1][j];
A[i][j] = A[i][j] + left + right;
}
}
}
System.out.println(A[n-1][k-1]);
}
}