Number of Dice Rolls With Target Sum LeetCode solution in Java
1class Solution {2public int numRollsToTarget(int n, int k, int target) {3if (target < n || target > n * k) return 0;4if (n == 1) return 1;56int[][] dp = new int[n + 1][n * k + 1];7for (int i = 1; i <= k; i++) {8dp[1][i] = 1;9}10int mod = 1000000007;11for (int i = 2; i <= n; i++) {12for (int j = i; j <= i * k && j <= target; j++) {13for (int x = 1; x <= k; x++) {14if (j - x >= 1) {15dp[i][j] += dp[i - 1][j - x];16if (dp[i][j] >= mod) {17dp[i][j] %= mod;18}19}20}21}22}23return dp[n][target] % mod;24}25}