美文网首页
6168. 恰好移动 k 步到达某一位置的方法数目

6168. 恰好移动 k 步到达某一位置的方法数目

作者: 来到了没有知识的荒原 | 来源:发表于2022-09-04 16:27 被阅读0次

6168. 恰好移动 k 步到达某一位置的方法数目

被坑了,scipy的comb默认计算组合数是不精确的,使用浮点数计算,需要加参数exact=True才会使用整型long long 计算。

以下三个结果里,res2是错误的。

from scipy.special import comb
MOD = int(1e9 + 7)

import math

def factorial_(n):
    result=1
    for i in range(2,n+1):
        result=result*i
    return result

def comb_1(n,m):
    return math.factorial(n)//(math.factorial(n-m)*math.factorial(m))  #直接使用math里的阶乘函数计算组合数

class Solution(object):
    def numberOfWays(self, startPos, endPos, k):
        dis = abs(startPos - endPos)
        if (k + dis) & 1 or k < dis:
            return 0

        n = (k + dis) / 2
        n = int(n)
        m = k

        res1 = int(comb_1(m, n)) % MOD
        res2 = int(comb(m, n)) % MOD
        res3 = int(comb(m, n, exact = True)) % MOD
        print(res1)
        print(res2)
        print(res3)

        return res3

相关文章

  • 6168. 恰好移动 k 步到达某一位置的方法数目

    6168. 恰好移动 k 步到达某一位置的方法数目[https://leetcode.cn/problems/nu...

  • 与其踏上恰好到来的下楼电梯,不如耐心等一会上楼电梯

    1. 迫不及待踏上一趟恰好到达电梯数目更少的下楼的电梯,真的!比不上!耐心!沉住气!去电梯数目更多的地方等一趟上楼...

  • LeetCode 189. 旋转数组

    题目描述 给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。 思路 第一种方法 将后 k 个元...

  • 信条

    因果关系:假设我们移动一件物品,通常是假设物品到达某个位置后,才能过身体移动物品到达假设的位置。 这种到底属于果决...

  • 旋转数组

    方法一: 暴力解法 一步一步移动数组,将数组中的每个元素都往后走一步,将末尾的值放到起点k步后就是想要的结果 时间...

  • 长沙机场到达区灯箱广告价格

    长沙机场到达区几乎是机场灯箱广告媒体的天堂,它们数目众多,主要分布在行李大厅或者到达乘客出站的必经通道,这样的位置...

  • LeetCode 189.旋转数组

    给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。 C

  • day4(浏览器中的位置)

    总结一下jquery获取元素位置方法: 一般情况,最简单的就是到达某一个元素时,元素出现:$(window).sc...

  • LeetCode 61:旋转链表 Rotate List

    ​给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。 Given a linked ...

  • LeetCode: 旋转数组

    旋转数组 English Description 给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非...

网友评论

      本文标题:6168. 恰好移动 k 步到达某一位置的方法数目

      本文链接:https://www.haomeiwen.com/subject/lidmnrtx.html