【学习笔记】CF582D Number of Binominal Coefficients

这篇具有很好参考价值的文章主要介绍了【学习笔记】CF582D Number of Binominal Coefficients。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

注意 P P P事实上不会影响复杂度,因为关于组合数,我们有一个非常经典的结论: ( n + m m ) \binom{n+m}{m} (mn+m)包含的 P P P的幂的次数等于 n n n m m m P P P进制下做加法的进位次数。这样,我们只需要关心进位的次数,而不必知道每一位具体是多少。

这个结论的证明也不困难。考虑答案是 ∑ i ≥ 1 ⌊ n + m p i ⌋ − ⌊ n p i ⌋ − ⌊ m p i ⌋ \sum_{i\ge 1}\lfloor\frac{n+m}{p^i}\rfloor-\lfloor\frac{n}{p^i}\rfloor-\lfloor\frac{m}{p^i}\rfloor i1pin+mpinpim,那么只要在第 i i i位进位了就会贡献 1 1 1,所以就证完了。

感觉我在废话。。。但是我们也可以顺便发现,答案肯定不会超过 ∣ A ∣ |A| A,所以 α \alpha α的范围也是假的。

传统的数位 D P DP DP都是从高往低位处理,但是这题不一样,因为涉及到进位所以似乎从低往高位处理会更自然一些,所以数位 D P DP DP的方向其实是都可以的,总之用一个 01 01 01状态记录一下就好了。还要用 01 01 01状态记录一下是否进位,然后记录一下进位的次数,这道题目就做完了。

复杂度 O ( ∣ A ∣ 2 ) O(|A|^2) O(A2)

需要把 A A A转化成 P P P进制。这个直接模拟高精就行了,因此不再赘述。文章来源地址https://www.toymoban.com/news/detail-532928.html

到了这里,关于【学习笔记】CF582D Number of Binominal Coefficients的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【学习笔记】CF1783G Weighed Tree Radius

    如果 w v ( u ) w_v(u) w v ​ ( u ) 指代的就是直径,或者说我们再添一项 a v a_v a v ​ ,那么我们几乎就做完了。 于是自然而然想到换一个定义: d ( u , v ) = dist ( u , v ) + a u + a v d(u,v)=text{dist}(u,v)+a_u+a_v d ( u , v ) = dist ( u , v ) + a u ​ + a v ​ 。 发现这样转化过后,设直径的两个端点

    2024年02月16日
    浏览(36)
  • 【学习笔记】CF576D Flights for Regular Customers

    不同于传统的最短路,当我们走到一个节点的时候,还要记录此时经过的边数才能完成转移。但是第二维太大了,太抽象了! 看到 m m m 这么小,很难不想到离散化。那么设 f i , j f_{i,j} f i , j ​ 表示当第 i i i 条边出现时,在节点 j j j 是否可行,注意这是 01 01 01 状态。转移非

    2024年02月12日
    浏览(30)
  • 【学习笔记】CF1835D Doctor‘s Brown Hypothesis

    有点难😅 发现 x , y x,y x , y 在一个强连通块内,这样一定有环🤔 发现可以找到强连通块内所有环长度的 gcd ⁡ gcd g cd ,这样从 x x x 到 y y y 的所有路径的长度都模这个数同余,又因为 K K K 非常大,所以我们总可以遍历整个强连通块并走若干个环,因此只需要从 x x x 到 y y

    2024年02月09日
    浏览(32)
  • CF、SF、OF、ZF标志位

    没学汇编,这种题我真是做一道错一道:-( 注: 1)数据存放在内存或CPU寄存器中都统一使用有符号数的补码。 2)ALU中运算无视有无符号,统一使用一套逻辑,只会根据输入信号进行逻辑运算 若为加法: [x]补+[y]补 若为减法: [x]补-[y]补 = [x]补+[y]求补 3) 一个数的补码与对一个

    2024年02月13日
    浏览(43)
  • CF963B Destruction of a Tree 题解

      洛谷题目链接   这里提供一个较为朴素的 DP 想法。   给定一棵树,节点个数不超过 (2 times 10^5) ,每次可以删掉度数为偶数的点。问最后能不能删完;能删完给出删除方案。   首先可以随便选一个点作为根。   其次,我们考虑在一棵子树的删除情况,我们令

    2024年02月08日
    浏览(38)
  • LeetCode447. Number of Boomerangs

    You are given n points in the plane that are all distinct, where points[i] = [xi, yi]. A boomerang is a tuple of points (i, j, k) such that the distance between i and j equals the distance between i and k (the order of the tuple matters). Return the number of boomerangs. Example 1: Input: points = [[0,0],[1,0],[2,0]] Output: 2 Explanation: The two boomerangs

    2024年02月02日
    浏览(36)
  • LeetCode 933. Number of Recent Calls

    ou have a  RecentCounter  class which counts the number of recent requests within a certain time frame. Implement the  RecentCounter  class: RecentCounter()  Initializes the counter with zero recent requests. int ping(int t)  Adds a new request at time  t , where  t  represents some time in milliseconds, and returns the number of requests that has h

    2024年02月08日
    浏览(47)
  • LeetCode //C - 933. Number of Recent Calls

    You have a RecentCounter class which counts the number of recent requests within a certain time frame. Implement the RecentCounter class: RecentCounter() Initializes the counter with zero recent requests. int ping(int t) Adds a new request at time t, where t represents some time in milliseconds, and returns the number of requests that has happened in the pas

    2024年01月23日
    浏览(49)
  • Java异常 #Number of lines annotated by Git is not equal to number of lines in the file, check file …

    在项目中某个 java 文件左边栏右键查看代码版本履历(Annotate)时无法显示,IDEA 提示:Number of lines annotated by Git is not equal to number of lines in the file, check file encoding and line separators.   这个问题涉及到不同操作系统下文本文件的换行符差异引起的。在不同操作系统中,文本文件的

    2024年02月03日
    浏览(43)
  • 【算法】Number of Closed Islands 统计封闭岛屿的数目

    二维矩阵 grid 由 0 (土地)和 1 (水)组成。岛是由最大的4个方向连通的 0 组成的群,封闭岛是一个 完全 由1包围(左、上、右、下)的岛。 请返回 封闭岛屿 的数目。 行,列范围[1,100] , g r i d [ i ] [ j ] grid[i][j] g r i d [ i ] [ j ] ==0OR1 问题要求封闭island的数量,就是找出完全

    2024年02月10日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包