题面

首先这 \(n\) 个数是互相独立的,所以我们不需要统一的去考虑,只需要考虑其中一个数即可。

我们以 \(k=5\) 的情况举例。

我设 \(f_i\) 为最后一行只填前 \(i\) 个点的情况数, \(g_i\) 为 \(k=i\) 时总共的情况数。

显然, \(f_0\) 就是 \(g_{k-1}\) ,在这里就是 \(g_4\) 。



然后 \(f_1\) 其实就是图中黑色部分一定填,白色一定不填,红色部分可选的种类数。进一步观察,这个红色部分其实就是 \(g_3\) 。





再进一步由图可以得到, \(f_2=g_2,f_3=g_1\) 。

再往下, \(f_4\) 和 \(f_5\) 都没得选了,所以 \(f_4=f_5=1\) 。

为了下面讲述方便,我们设 \(f_4=g_0=1\) 。

那么我们已经得到了 \(g_5=\sum^5_{i=1}f_i\) ,那么我们可以推广到其他数,可知 \(g_k=\sum^k_{i=1}f_i\)

再进一步观察,当 \(k=5\) 时, \(f_0=g_4,f_1=g_3,f_2=g_2,f_3=g_1,f_4=g_0\) ,

所以 \(g_5=\sum^5_{i=1}f_i=\sum^4_{i=1}g_{4-i}+f_5=\sum^4_{i=1}g_i+1\) 。

推广到其他数,可知 \(g_k=\sum^{k-1}_{i=1}g_i+1\)

那么我们可以根据 \(g_0=1\) 推出 \(g_1=2,g_2=4,g_3=8\) 。

观察规律,可以发现 \(g_i=2^i\) 。

如何证明呢?我们使用数学归纳法。

首先当 \(i=0\) 时,\(g_0=1=2^0\) ,结论成立。

再假设 \(i=k\) 时,结论已成立,那么 \(g_{k+1}=\sum^{k}_{i=1}g_i+1=\sum^{k-1}_{i=1}g_i+1+g_k\) ,而 \(\sum^{k-1}_{i=1}g_i+1=g_k\) ,所以 \(g_{k+1}=\sum^{k-1}_{i=1}g_i+1+g_k=2\times g_k=2\times 2^k=2^{k+1}\) ,所以 \(i=k+1\) 时仍然成立。

所以我们就证明出了 \(g_i=2^i\) 。

回到最开始。我们有 \(n\) 个数,每个数有 \(g_k=2^k\) 种选择,那么根据乘法原理,总计的选择数就是 \(2^{nk}\) 。用快速幂算一下即可。代码就不贴了。

洛谷P6075题解的更多相关文章

  1. [洛谷P3376题解]网络流(最大流)的实现算法讲解与代码

    [洛谷P3376题解]网络流(最大流)的实现算法讲解与代码 更坏的阅读体验 定义 对于给定的一个网络,有向图中每个的边权表示可以通过的最大流量.假设出发点S水流无限大,求水流到终点T后的最大流量. 起 ...

  2. 洛谷P5759题解

    本文摘自本人洛谷博客,原文章地址:https://www.luogu.com.cn/blog/cjtb666anran/solution-p5759 \[这道题重在理解题意 \] 选手编号依次为: \ ...

  3. 关于三目运算符与if语句的效率与洛谷P2704题解

    题目描述 司令部的将军们打算在N*M的网格地图上部署他们的炮兵部队.一个N*M的地图由N行M列组成,地图的每一格可能是山地(用“H” 表示),也可能是平原(用“P”表示),如下图.在每一格平原地形上最 ...

  4. c++并查集配合STL MAP的实现(洛谷P2814题解)

    不会并查集的话请将此文与我以前写的并查集一同食用. 原题来自洛谷 原题 文字稿在此: 题目背景 现代的人对于本家族血统越来越感兴趣. 题目描述 给出充足的父子关系,请你编写程序找到某个人的最早的祖先. ...

  5. 洛谷P2607题解

    想要深入学习树形DP,请点击我的博客. 本题的DP模型同 P1352 没有上司的舞会.本题的难点在于如何把基环树DP转化为普通的树上DP. 考虑断边和换根.先找到其中的一个环,在上面随意取两个点, 断 ...

  6. 洛谷 P6075 [JSOI2015]子集选取

    链接:P6075 前言: 虽然其他大佬们的走分界线的方法比我巧妙多了,但还是提供一种思路. 题意: %&¥--@#直接看题面理解罢. 分析过程: 看到这样的题面我脑里第一反应就是DP,但是看到 ...

  7. 【洛谷】题解 P1056 【排座椅】

    题目链接 因为题目说输入保证会交头接耳的同学前后相邻或者左右相邻,所以一对同学要分开有且只有一条唯一的通道才能把他们分开. 于是可以吧这条通道累加到一个数组里面.应为题目要求纵列的通道和横列的通道条数 ...

  8. 洛谷P3572题解

    这道题实在是一道 毒瘤 题,太坑爹了.那个写 \(deque\) 的题解亲测只有80分,原因 不言而明 ,这道题居然 丧心病狂 到 卡STL . 好了,不吐槽了,进入正题 题目分析: 这是一道十分 简 ...

  9. [洛谷P1972][题解][SDOI2009]HH的项链

    别碰我! 自己还是太蒟了…… 看了好久,最后抄参考题解打出来的…… 前面的可能影响后面的,所以按照询问右端点排序 这时候维护一个前缀和数组就可以了, 那么问题又来了,去重? 可以这样,从前往后枚举,如 ...

随机推荐

  1. Python的dict

    dict把key和value关联起来,可以通过 key来查找 value. 花括号 {} 表示这是一个dict,然后按照 key: value, 写出来即可.最后一个 key: value 的逗号可以 ...

  2. MongoDB - 文档之间的关系 + _sort和投影

    1. 文档对象之间的关系 一对一 (one TO one) - 例如: 夫妻 (一个丈夫 对应 一个妻子) - 在MongoDB中, 可以通过内嵌文档的形式来体现出一对一的关系 演示: 首先在 my_ ...

  3. 理解ASP.NET Core - [01] Startup

    注:本文隶属于<理解ASP.NET Core>系列文章,请查看置顶博客或点击此处查看全文目录 准备工作:一份ASP.NET Core Web API应用程序 当我们来到一个陌生的环境,第一 ...

  4. freeswitch新增模块

    概述 freeswitch的架构由稳定的核心模块和大量的外围插件式模块组成.核心模块保持稳定,外围模块可以动态的加载/卸载,非常灵活方便. 外围模块通过核心提供的 Public API与核心进行通信, ...

  5. docker搭建mysql集群

    目录 一.集群方案 二.安装PXC集群 三.Haproxy负载均衡 四.访问测试 五.节点宕机或重启 六.参考 一.集群方案 1.Replication 速度快,但仅能保证弱一致性,适用于保存价值不高 ...

  6. ES6扩展——对象的扩展(简洁表示法与属性名表达式)

    1.简洁表达法. 当属性名与属性值相同时,可省略属性值:例如:{name : name}可以写成 {name} 属性方法中,可省略冒号与function,直接 属性名(){}即可.例如{say : f ...

  7. Ubuntu 16.04 + python3 源码 安装+使用labelImg最新版

    安装 sudo apt-get update sudo apt-get upgrade sudo apt install python3-pip git clone https://github.co ...

  8. jmeter实际场景应用之测试上传excel文件

    日常工作上测试的时候,会有一些场景是导入/上传文件.我们系统多是excel文件,这里就用excel文件为例,详述一下此次测试遇到的坑.最终结果是成功的,请看到最后! 1.获取接口的一些参数信息 先按F ...

  9. 整理之BroadcaseReceiver

    广播的分类 有序广播:按接收器优先级从高到低接受消息,一次只能有一个接收器处理消息.中途可以被截断. 无序广播:所有接收器同时接受消息并处理,无法拦截. 本地广播:只能在本应用内传播的无需广播.上面两 ...

  10. WEB漏洞——SQL

    由于我的博客是学到渗透的时候才做的,没有关于WEB漏洞的笔记,现在发现WEB层面的漏洞有些不太熟悉了,边写一下笔记边复习一下,就从sql注入开始吧 话不多说先上大佬写的表[ctfhub]SQL注入 - ...