2825 危险的组合

时间限制: 1 s
空间限制: 64000 KB
题目等级 : 钻石 Diamond
题目描述 Description

有一些装有铀(用U表示)和铅(用L表示)的盒子,数量均足够多。要求把N个盒子放成一行,但至少有3个U放在一起,有多少种方法?

输入描述 Input Description

包含一个整数N

输出描述 Output Description

输出一个整数表示方法数。

样例输入 Sample Input

样例1:4

样例2:5

样例输出 Sample Output

样例1:3

样例2:8

数据范围及提示 Data Size & Hint

对于100%的数据(3<=N<=30)

样例1解释:

UUUL、LUUU、UUUU

样例2解释:

UUUUL、UUUUU、UUULU、UUULL、LUUUU、LUUUL、ULUUU、LLUUU

【思路】

当加入第n个的时候有两种情况(1 )前面的n-1个已经满足了,而第n个要么是u要么是l,所以这这情况有 2*num(n-1)种

当加入第n个的时候,前面的n-1种没有满足情况,所以n-1个前面几个排列一定是 uul。。。 所以在前面加入一个u正好满足要求 就是UUUl...(第一个u是新加的 )

而后面n-4个一共的情况(包括三个u没有挨在一起的)pow(2,n-4)种情况,再减去num(n-4)(也就是减去n-4个排列满足三个u在一起的情况,因为我们现在是找n-1个不满足的情况)。

就推出递推式了  做出来了  爽QWQ

【代码】

 #include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cmath>
using namespace std;
int n;
int num(int x)
{
if(x<)return ;
if(x==)return ;
if(x==)return ;
return *num(x-)+pow(,x-)-num(x-);
}
int main()
{
scanf("%d",&n);
printf("%d",num(n));
return ;
}

2825 codevs危险的组合(递推)的更多相关文章

  1. Crash的游戏 [组合+递推]

    题面 思路 问题转化 这个问题的核心在于,我们需要把"加入一个球.拿出一个球"这两个操作转化一下 因为显然两个操作同时进行的话,我们没有办法从单纯的组合意义去分析 我们首先把$m$ ...

  2. Codeforces Round #526 C - The Fair Nut and String /// 组合递推

    题目大意: 给定原字符序列 找出其中所有子序列满足 1.序列内字符都为a 2.若有两个以上的字符 则相邻两个字符在原序列中两者之间存在字符b 的数量 将整个字符序列用b分开 此时再得到每个b之间a的数 ...

  3. UVA 557 Burger 排列组合递推

    When Mr. and Mrs. Clinton's twin sons Ben and Bill had their tenth birthday, the party was held at t ...

  4. 逆元 组合A(n,m) C(n,m)递推 隔板法

    求逆元 https://blog.csdn.net/baidu_35643793/article/details/75268911 int inv[N]; void init(){ inv[] = ; ...

  5. 递推,求至少连续放置三个U的危险组合

    UVA580-Critical Mass 题意 有两种方块,L和U,有至少三个连续的U称为危险组合,问有多少个危险组合 solution: 至少这个概念比较难求 ,所以转化为(1ll<<n ...

  6. P1759 通天之潜水(不详细,勿看)(动态规划递推,组合背包,洛谷)

    题目链接:点击进入 题目分析: 简单的组合背包模板题,但是递推的同时要刷新这种情况使用了哪些物品 ac代码: #include<bits/stdc++.h> using namespace ...

  7. 【bzoj 2339】[HNOI2011]卡农(数论--排列组合+逆元+递推)

    题意:从编号为 1~N 的音阶中可选任意个数组成一个音乐片段,再集合组成音乐篇章.要求一个音乐篇章中的片段不可重复,都不为空,且出现的音符的次数都是偶数个.问组成 M 个片段的音乐篇章有多少种.答案取 ...

  8. AGC001E BBQ Hard 组合、递推

    传送门 题意:给出长度为$N$的两个正整数序列$A_i,B_i$,求$\sum\limits_{i=1}^N \sum\limits_{j=i+1}^N C_{A_i+A_j+B_i+B_j}^{A_ ...

  9. Berlekamp Massey算法求线性递推式

    BM算法求求线性递推式   P5487 线性递推+BM算法   待AC.   Poor God Water   // 题目来源:ACM-ICPC 2018 焦作赛区网络预赛 题意   God Wate ...

随机推荐

  1. vscode常用快捷键及常用设置

    快捷键 ctrl+b 切换侧边栏 ctrl+\ 拆分编辑器 ctrl+鼠标滚轮 缩放编辑器的字体 alt+shift+f 整理代码格式 alt+z 切换自动换行 ctrl+· 打开终端调试 ctrl+ ...

  2. HttpServlet---getLastModified与缓存

    在HttpServlet中重写service方法的代码如下: protected void service(HttpServletRequest req, HttpServletResponse re ...

  3. gradle配置笔记

    apply plugin 使用插件 group 包名 version 项目版本 sourceCompatibility 指定编译.java文件的jdk版本 targetCompatibility 确保 ...

  4. springmvc-restful

    1.restful概述 REST 仅仅是一种架构的风格,并不是真正的架构,也不是一个软件,而是一种思想. 我们可以基于现有的HTTP.URI.XML.等现有技术来实现REST的风格.而不用去学习任何新 ...

  5. echache缓存的简单使用方法

    1.需要echache的jar包 2.需要配置文件ehcache.xml和ehcache.xsd,主要是在ehcache.xml中进行配置 3.修改配置文件ehcache.xml  ,例如添加配置如下 ...

  6. jquery开发js插件

    1.需要掌握的知识点 1)(function($){...}(jQuery)):实际上就是匿名函数并且函数用()阔起来,形成闭包,外界对其内部函数没有影响 $(function(){…});   jQ ...

  7. MapReduce-多个Mapper

    MapReduce的多输入.多mapper 虽然一个MapReduce作业的输入可能包含多个输入文件(由文件glob.过滤器和路径组成),但所有文件都由同一个InputFormat和同一个Mapper ...

  8. HDU 5992 kd-tree

    还记得青岛的时候和蕾姐讨论了近三个小时也不知道这是什么东西 后来发现是kdtree 于是拖到寒假才补这个算法 写完几道模板题发现多维的kdtree查找最近也是很简单的拓展 于是很快1A了这道题 它真的 ...

  9. Java -- JDBC 数据库连接池

    1. 原理代码示例 public class JdbcPool implements DataSource { private static LinkedList<Connection> ...

  10. ubuntu安装与卸载.dep软件

    一般情况下我们都是使用apt-get install进行软件安装,但是有时候也有可直接install的文件例如.deb. 接下来就记录一下.dep软件的安装与卸载 安装: 直接找到软件,双击就可以进行 ...