题目链接:戳我

生成函数的入门题吧。

我们可以把条件限制转化为生成函数,然后用第i项的系数来表示一共使用n块石头的方案个数。
(你问我为什么?你可以自己演算一下,或者去看大佬的博客-->这里面讲的是生成函数基础)

这些约束条件的生成函数分别为

  • \(1+x^6+x^{12}+...=\frac{1}{1-x^6}\)
  • \(1+x^2+x^3+x^4+x^5+x^6+x^7+x^8+x^9=\frac{1-x^{10}}{1-x}\)
  • \(1+x+x^2+x^3+x^4+x^5=\frac{1-x^6}{1-x}\)
  • \(1+x^4+x^8+...=\frac{1}{1-x^4}\)
  • \(1+x=\frac{1-x^2}{x}\)
  • \(1+x^8+x^{16}+...=\frac{1}{1-x^8}\)
  • \(1+x^{10}+...=\frac{1}{1-x^{10}}\)
  • \(1+x+x^2+x^3=\frac{1-x^4}{1-x}\)
    然后乘起来就是\(\frac{1}{(1-x)^5}\)

我们展开就是答案\(C_{n+4}^{4}\)

至于为什么转化到了组合数呢?因为5个\(\frac{1}{1-x}\),就相当于五个\(1+x+x^2+x^3+.....\)
我们取次数等于n的系数就行了,而这就相当于在这5个里面找出一些不同次数(次数非负),然后它们的和为n。然后用隔板法就可以推出来了。

Luogu2000 拯救世界的更多相关文章

  1. 洛谷P2000 拯救世界(生成函数)

    题面 题目链接 Sol 生成函数入门题 至多为\(k\)就是\(\frac{1-x^{k+1}}{1-x}\) \(k\)的倍数就是\(\frac{1}{1-x^k}\) 化简完了就只剩下一个\(\f ...

  2. luogu P2000 拯救世界

    嘟嘟嘟 题目有点坑,要你求的多少大阵指的是召唤kkk的大阵数 * lzn的大阵数,不是相加. 看到这个限制条件,显然要用生成函数推一推. 比如第一个条件"金神石的块数必须是6的倍数" ...

  3. 【洛谷】P2000 拯救世界

    题解 小迪的blog : https://www.cnblogs.com/RabbitHu/p/9178645.html 请大家点推荐并在sigongzi的评论下面点支持谢谢! 掌握了小迪生成函数的有 ...

  4. Luogu 2000 拯救世界

    从胡小兔的博客那里过来的,简单记一下生成函数. 生成函数 数列$\{1, 1, 1, 1, \cdots\}$的生成函数是$f(x) = 1 + x + x^2 + x^3 + \cdots$,根据等 ...

  5. 清北学堂模拟赛d7t6 拯救世界

    分析:如果题目中没有环的话就是一道裸的最长路的题目,一旦有环每个城市就会被救多次火了.把有向有环图变成有向无环图只需要tarjan一边就可以了. #include <bits/stdc++.h& ...

  6. luogu P2000 拯救世界 生成函数_麦克劳林展开_python

    模板题. 将所有的多项式按等比数列求和公式将生成函数压缩,相乘后麦克劳林展开即可. Code: n=int(input()) print((n+1)*(n+2)*(n+3)*(n+4)//24)

  7. [LGP2000] 拯救世界

    6的倍数 1/(1-x^6) 最多9块 (1-x^10)/(1-x) 最多5块 (1-x^6)/(1-x) 4的倍数 1/(1-x^4) 最多7块 (1-x^8)/(1-x) 2的倍数 1/(1-x^ ...

  8. [题解] Luogu P2000 拯救世界

    生成函数板子题...... 要写高精,还要NTT优化......异常dl 这个并不难想啊...... 一次召唤会涉及到\(10\)个因素,全部写出来,然后乘起来就得到了答案的生成函数,输出\(n\)次 ...

  9. [洛谷P2000 拯救世界]

    生成函数版题. 考虑对于这些条件写出\(OGF\) \(1 + x^6 + x^{12} + x^{18}..... = \frac{1}{1 - x^6}\) \(1 + x + x ^ 2 + x ...

随机推荐

  1. 小菜鸟之Oracle数据库

    select * from STUDENT; select * from mark; select * from COURSE; select * from teacher; --注释 select ...

  2. Eclipse 新建.jsp页面后,页面头部标签报错的解决方法

    Eclipse 新建.jsp页面后,页面头部标签报错的解决方法 1.报错地方: 2.解决方法: .jsp页面右键==>BUild Path ==>Configure Build Path. ...

  3. POJ - 1815 Friendship (最小点割集)

    (点击此处查看原题) 题目分析 题意:有n个人,编号记为1~n,n个人之间可能有人可以互相联系,如果A能和B联系,那么至少满足这两种情况之一:(1)A知道B的电话(2)A可以和C联系,并且C可以和B联 ...

  4. predis操作redis方法大全

    //连接redis $redis = new Redis(); $redis->connect("127.0.0.1", 6379); //普通set/get操作 $redi ...

  5. Design Support库中的控件

    1.NavigationView滑动菜单 2.FloatIngActionButton悬浮按钮 3.Snackbar二次交互提示的按钮 4.Coordinatorlayout,监听子控件的各种事件(加 ...

  6. sql limit i,n

    limit i,n; i:为查询结果的索引值(默认从0开始),当i=0时可省略i n:为查询结果返回的数量(也就是条数) 表示从第i+1条开始,取n条数据 limit n 等同于 limit 0,n ...

  7. GitFlow入门

    1-概述 2-GitFLow分支介绍 2.1-master 分支 2.2-develop 分支 2.3-feature 分支 2.4-release 分支 2.5-hotfix 分支 3-GitFlo ...

  8. TensorFlow入门——MNIST初探

    import tensorflow.examples.tutorials.mnist.input_data as input_data import tensorflow as tf mnist = ...

  9. Nginx如何配置反向代理

    server { listen 80; server_name 代理域名; location / { proxy_pass 应用域名:应用端口; proxy_set_header Host $host ...

  10. js 重要函数

    1. Array.some some() 方法用于检测数组中的元素是否满足指定条件(函数提供) 如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测.如果没有满足条件的元素,则返 ...