字节笔试第4题 有大佬写出来了吗

就是小明小红掷骰子那题。 不知道回溯剪枝能不能过,复杂度很高但能剪一部分,最后时间不够了没写完。
有没有大佬有数学方法或者其他方法的,求个思路


前3题做完了还剩50分钟,怎么都想不出来,急了


-----补充-------
刚刚又做了一下,贴个代码,样例过了,应该没啥问题吧。
哎,剑指那题我还做过,忘了,有点亏。
import java.util.*;

public class Main{
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int m = sc.nextInt();
        int[] arrA = new int[n];
        int[] arrB = new int[m];
        for (int i = 0; i < n; ++i) {
            arrA[i] = sc.nextInt();
        }
        for (int i = 0; i < m; ++i) {
            arrB[i] = sc.nextInt();
        }
        long[][] pA = dp(arrA);
        long[][] pB = dp(arrB);
        for (int i = 1; i < 161; ++i) {
            pB[m][i] += pB[m][i - 1];
        }
        long sumA = 0;
        for (int i = 0; i < 161; ++i) {
            sumA += pA[n][i];
        }
        double p = 0;
        for (int i = 1; i < 161; ++i) {
            p += ((double) pA[n][i] / sumA) * ((double) pB[m][i - 1] / pB[m][160]);
        }
        System.out.println(p);
    }

    private static long[][] dp(int[] arr) {
        long[][] p = new long[arr.length + 1][161];
        p[0][0] = 1;
        for (int i = 1; i <= arr.length; ++i) {
            for (int j = i; j <= 8 * i; ++j) {
                for (int k = 1; k <= arr[i - 1]; ++k) {
                    if (j - k >= 0)
                        p[i][j] += p[i - 1][j - k];
                }
            }
        }
        return p;
    }
}


#字节跳动##校招##笔试##字节23秋招笔试太难了吧#
全部评论
在剑指offer 60题的基础上写就行
1 回复 分享
发布于 2022-08-22 14:49 北京
我想可不可以创造两个数组记录数组下标点数出现的概率 然后比一下。。。
点赞 回复 分享
发布于 2022-08-25 00:08 上海
个人感觉就是把多个骰子合并为一个骰子算分数与概率的情况,然后分两组,枚举第一个人得分概率与第二个人小于第一人得分概率的乘积的和
点赞 回复 分享
发布于 2022-08-21 23:50 陕西
看我帖子哦,A了
点赞 回复 分享
发布于 2022-08-21 22:33 北京
最后一个算数学题了 手动把每个人能骰出来的点数和的分布算好,然后分解事件去算就好了
点赞 回复 分享
发布于 2022-08-21 22:04 上海
好强哦,可以讲一下前三道的思路吗X﹏X
点赞 回复 分享
发布于 2022-08-21 21:48 四川
数据点都很大,回溯直接超时,用dp能过,但是我没用long long直接WA了,枯了,结束了才发现,导致样例过了但是提交的时候一个点都过不去
点赞 回复 分享
发布于 2022-08-21 21:41 湖南

相关推荐

迷茫的大四🐶:那你问他上班之后老实了没
点赞 评论 收藏
分享
评论
3
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务