当前位置:网站首页>LeetCode 1155. 掷骰子的N种方法 每日一题
LeetCode 1155. 掷骰子的N种方法 每日一题
2022-07-07 15:32:00 【@小红花】
问题描述
这里有 n 个一样的骰子,每个骰子上都有 k 个面,分别标号为 1 到 k 。
给定三个整数 n , k 和 target ,返回可能的方式(从总共 kn 种方式中)滚动骰子的数量,使正面朝上的数字之和等于 target 。
答案可能很大,你需要对 109 + 7 取模 。
示例 1:
输入:n = 1, k = 6, target = 3
输出:1
解释:你扔一个有6张脸的骰子。
得到3的和只有一种方法。
示例 2:输入:n = 2, k = 6, target = 7
输出:6
解释:你扔两个骰子,每个骰子有6个面。
得到7的和有6种方法1+6 2+5 3+4 4+3 5+2 6+1。
示例 3:输入:n = 30, k = 30, target = 500
输出:222616187
解释:返回的结果必须是对 109 + 7 取模。
提示:
1 <= n, k <= 30
1 <= target <= 1000来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/number-of-dice-rolls-with-target-sum
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
Java
class Solution {
public int numRollsToTarget(int n, int k, int target) {
int[][] dp = new int[n + 1][target + 1];
int mod = (int)Math.pow(10,9) + 7;
dp[0][0] = 1;
for(int i = 1;i <= n;i++){
for(int j = 1;j <= target;j++){
for(int q = 1;q <= k;q++){
if(j >= q)
dp[i][j] = (dp[i][j] + dp[i - 1][j - q]) % mod;
}
}
}
return dp[n][target];
}
}
边栏推荐
- 二叉搜索树(特性篇)
- 删除 console 语句引发的惨案
- ATM system
- Lowcode: four ways to help transportation companies enhance supply chain management
- 值得一看,面试考点与面试技巧
- typescript ts基础知识之tsconfig.json配置选项
- Deep listening array deep listening watch
- ATM系统
- Imitate the choice of enterprise wechat conference room
- Leetcode-136- number that appears only once (solve with XOR)
猜你喜欢
随机推荐
QT中自定义控件的创建到封装到工具栏过程(二):自定义控件封装到工具栏
C语言进阶——函数指针
深度监听 数组深度监听 watch
The latest interview experience of Android manufacturers in 2022, Android view+handler+binder
预测——灰色预测
[C language] question set of X
Three. JS series (2): API structure diagram-2
Three. JS series (3): porting shaders in shadertoy
最新2022年Android大厂面试经验,安卓View+Handler+Binder
模拟Servlet的本质
Interface oriented programming
Asyncio concept and usage
Record the migration process of a project
As an Android Developer programmer, Android advanced interview
记录Servlet学习时的一次乱码
平衡二叉树(AVL)
【PHP】PHP接口继承及接口多继承原理与实现方法
作为Android开发程序员,android高级面试
ByteDance Android gold, silver and four analysis, Android interview question app
Detailed explanation of several ideas for implementing timed tasks in PHP