算法|每日一题|掷骰子等于目标和的方法数|动态规划

1155.掷骰子等于目标和的方法数

原题地址: 力扣每日一题:掷骰子等于目标和的方法数

这里有 n 个一样的骰子,每个骰子上都有 k 个面,分别标号为 1 到 k 。

给定三个整数 n , k 和 target ,返回可能的方式(从总共 kn 种方式中)滚动骰子的数量,使正面朝上的数字之和等于 target 。

答案可能很大,你需要对 109 + 7 取模 。

java 复制代码
class Solution {
    static final int MOD = 1000000007;
    public int numRollsToTarget(int n, int k, int target) {
        int[] f = new int[target + 1];
        f[0] = 1;
        for (int i = 1; i <= n; i++) {
            for (int j = target; j >= 0; j--) {
                f[j] = 0;
                for (int x = 1; x <= k; x++) {
                    if (j - x >= 0) {
                        f[j] = (f[j] + f[j - x]) % MOD;
                    }
                }
            }
        }
        return f[target];
    }
}

如果对您有帮助,请点赞关注支持我,谢谢!❤

如有错误或者不足之处,敬请指正!❤

相关推荐
mmm.c3 小时前
Redis 两级缓存 + Pub/Sub 广播:一次为抗高并发做的缓存改造
java
yexianglunbai3 小时前
中间件(Middleware)详解:概念、作用与实战
java·开发语言·中间件
叶总没有会3 小时前
OpenFeign
java·开发语言·springcloud·openfeign
小七在进步3 小时前
类和对象(四)
java·javascript·ajax
海天一色y3 小时前
图像分割全解析:从经典算法到深度学习的原理与实战(Python + MATLAB)
python·深度学习·算法
白帽攻防录3 小时前
SRC 挖洞:Apache Tomcat 加密拦截器绕过深度复盘,CVE-2026-34486 fail-open 一行代码怎么打穿集群通信
java·网络安全·tomcat·apache
后端LV3 小时前
三级缓存的两个失效盲区,我用 binlog 和消费组广播补上了
java·架构
写了20年代码的老程序员3 小时前
想让 AI 改 Bug 快准狠?先给日志加个业务代码坐标
java·后端·apache log4j
SL_staff3 小时前
JVS-Rules vs Drools:金融风控团队为何转向业务可编辑的决策平台
java·spring cloud·github
Zhou1411363 小时前
SpringMVC_03_进阶功能
java