打个暴力查一下OEIS,5min做完

出题人一开始把式子打错了,一开始的式子的结果为$n * (n + 3) * 2^{n - 3}$

我们考虑化式子

首先考虑

$\sum\limits_{j = 1}^k \sum\limits_{i = 0}^{n - 1} \binom{i}{k- j} * \binom{n - i - 1}{j - 1}$

$= \sum\limits_{i = 0}^{n - 1} \sum\limits_{j = 1}^k \binom{i}{k- j} * \binom{n - i - 1}{j - 1}$

$=  \sum\limits_{i = 0}^{n - 1} \sum\limits_{j = 0}^{k - 1} \binom{i}{k- j - 1} * \binom{n - i - 1}{j}$

我们考虑对后面运用范德蒙德卷积公式$\sum\limits_{i = 0}^k \binom{n}{i} \binom{m}{k - i} = \binom{n + m}{k}$,可以得到

$= \sum\limits_{i = 0}^{n - 1} \binom{n - 1}{k - 1}$

$= n * \binom{n - 1}{k - 1}$

$= k \binom{n}{k}$

因此,原式等于$\sum\limits_{k = 1}^n k^2 \binom{n}{k}$

我们可以对$(1 + x)^n = \sum\limits_{i = 0}^n \binom{n}{i} x^i$连续求导$2$次得到下面的恒等式

$\sum\limits_{k = 1}^n k^2 \binom{n}{k} = n * (n + 1) * 2^{n - 2}$

代码实现....算了吧...

复杂度$O(\log n)$

牛可乐发红包脱单OI赛 C 小可爱表白的更多相关文章

  1. 牛客网 牛可乐发红包脱单ACM赛 C题 区区区间间间

    [题解] 我想到了两种解法. 一种是扫描线+线段树+单调栈. 另一种方法是O(n)的,比较巧妙. 考虑每个数在哪些区间可以作为最小数.最长的区间就是它向左右走,直到有数字比它小,这个可以用单调栈维护. ...

  2. 牛客网 牛可乐发红包脱单ACM赛 B题 小a的旅行计划

    [题解] 题意其实就是把n个物品分成4个集合,其中三个集合不可以为空(只属于A.只属于B.AB的交),一个集合空或者非空都可以(不属于A也不属于B),问有多少种方案. 考虑容斥,4个集合都不为空的方案 ...

  3. 牛客网 牛可乐发红包脱单ACM赛 A题 生成树

    [题解] 其实就是求两棵树不同的边有多少条.那么我们用一个set来去重即可. #include<cstdio> #include<cstring> #include<se ...

  4. NowCoder--牛可乐发红包脱单ACM赛C_区区区间间间

    题目链接:C_区区区间间间 思路:算贡献,求出每个数为当前最大值时所在的区间个数,和每个数为最小值的区间个数 和这个题有点类似 搭配食用效果更佳 点击这里 #include<bits/stdc+ ...

  5. 牛客红包OI赛 C 小可爱表白

    据说是个公式题. Code #include<cstdio> #include<cstring> #include<algorithm> using namespa ...

  6. 牛客红包OI赛 B 小可爱序列

    Description 链接:https://ac.nowcoder.com/acm/contest/224/B 来源:牛客网 "我愿意舍弃一切,以想念你,终此一生." " ...

  7. PHP实现发红包程序(helloweba网站经典小案例)

    我们先来分析下规律. 设定总金额为10元,有N个人随机领取: N=1 第一个 则红包金额=X元: N=2 第二个 为保证第二个红包可以正常发出,第一个红包金额=0.01至9.99之间的某个随机数. 第 ...

  8. 微信发红包 PHP 实现

    最近做生日营销,需要微信发红包,特此从网上找了一篇教程 首先你的有个服务号,并且开通了微信支付,我在这就不说怎么去申请和开通了,我是看了微信官方文档后,想看官方文档的朋友可以到下面这个链接 https ...

  9. PHP实现发红包程序

    我们先来分析下规律. 设定总金额为10元,有N个人随机领取: N=1 第一个 则红包金额=X元: N=2 第二个 为保证第二个红包可以正常发出,第一个红包金额=0.01至9.99之间的某个随机数. 第 ...

随机推荐

  1. [转]激活函数ReLU、Leaky ReLU、PReLU和RReLU

    “激活函数”能分成两类——“饱和激活函数”和“非饱和激活函数”. sigmoid和tanh是“饱和激活函数”,而ReLU及其变体则是“非饱和激活函数”.使用“非饱和激活函数”的优势在于两点:    1 ...

  2. springCloud全实战超详细代码demo+笔记

    码云: https://gitee.com/houzheng1216/springcloud

  3. 【NOIP题解】NOIP2017 TG D2T3 列队

    列队,NOIP2017 TG D2T3. 树状数组经典题. 题目链接:洛谷. 题意: Sylvia 是一个热爱学习的女孩子. 前段时间,Sylvia 参加了学校的军训.众所周知,军训的时候需要站方阵. ...

  4. 脚本病毒分析扫描专题2-Powershell代码阅读扫盲

    4.2.PowerShell 为了保障木马样本的体积很小利于传播.攻击者会借助宏->WMI->Powershell的方式下载可执行文件恶意代码.最近也经常会遇见利用Powershell通过 ...

  5. nand flash 的oob 及坏块管理

    0.NAND的操作管理方式      NAND FLASH的管理方式:以三星FLASH为例,一片Nand flash为一个设备(device),1 (Device) = xxxx (Blocks),1 ...

  6. Nginx - upstream 模块及参数测试

    目录 - 1. 前言- 2. 配置示例及指令说明    - 2.1 配置示例    - 2.2 指令    - 2.3 upstream相关变量- 3. 参数配置及测试    - 3.1 max_fa ...

  7. CSS--布局模型,颜色值,长度值

    目录 布局模型 流动模型(Flow) 浮动模型 (Float) 层模型(Layer) 颜色值 长度值  一.布局模型 网页布局模型:个人理解,就是对html中各个元素进行一个排列.而排列的方法可以分为 ...

  8. Python学习笔记:import sys模块(argv、path、platform、exit)

    sys模块是Python标准库中自带的一个模块. sys模块包括了一组非常实用的服务,内含很多函数方法和变量,用来处理Python运行时配置以及资源,从而可以与当前程序之外的系统环境交互,如:Pyth ...

  9. JDK安装及配置 (tar.gz版)和tomcat的安装

    jdk下载: 我们这里下载了jdk-8u65-linux-x64.tar.gz. 官网:http://www.oracle.com/technetwork/java/javase/downloads/ ...

  10. Linux基础入门学习笔记之三

    第四节 Linux目录结构及文件基本操作 Linux目录结构 Linux 的目录与 Windows 的目录的区别 目录与存储介质(磁盘,内存,DVD 等)的关系 Windows 一直是==以存储介质为 ...